JSFiddle - React, Tailwind, and code Playground
JavaScript
(function() {
var printed = 0;
// FF and IE
var onbeforePrinting = function() {
// It may happen that the browser supports either onbeforeprint and
// matchMedia, let's avoid duplicated pushes to the dataLayer
for(i in google_tag_manager)
if(i.match(/^GTM/))
if(google_tag_manager[i].dataLayer.get('event')!="onBeforePrint")
{
if(printed == 0)
{
dataLayer.push({'event':'onBeforePrint','currentURL': location.pathname});
printed = 1;
}
}
};
// matchMedia Support
if (window.matchMedia) {
var mediaQueryList = window.matchMedia('print');
mediaQueryList.addListener(function(mql) {
if (mql.matches)
onbeforePrinting();
});
}
window.onbeforeprint = onbeforePrinting;
}());