Molti browser
ora supporta window.matchMedia
. Questa API ti consente di rilevare quando le media query CSS diventano effettive (ad esempio, ruotando lo schermo o stampando il documento). Per un approccio cross-browser, combina window.matchMedia con window.onbeforeprint /window.onafterprint .
Le seguenti operazioni possono comportare più chiamate a beforePrint() e afterPrint() (ad esempio, Chrome attiva il listener ogni volta che l'anteprima di stampa viene rigenerata
). Questo può essere desiderabile o meno a seconda della particolare elaborazione che stai eseguendo in risposta alla stampa.
if ('matchMedia' in window) {
// Chrome, Firefox, and IE 10 support mediaMatch listeners
window.matchMedia('print').addListener(function(media) {
if (media.matches) {
beforePrint();
} else {
// Fires immediately, so wait for the first mouse movement
$(document).one('mouseover', afterPrint);
}
});
} else {
// IE and Firefox fire before/after events
$(window).on('beforeprint', beforePrint);
$(window).on('afterprint', afterPrint);
}
Altro:https://tjvantoll.com/2012/ 15/06/rilevamento-richieste-di-stampa-con-javascript/