Wiele przeglądarek
teraz obsługuje window.matchMedia
. Ten interfejs API umożliwia wykrywanie, kiedy zapytania o media CSS wchodzą w życie (np. obracanie ekranu lub drukowanie dokumentu). Aby uzyskać podejście obejmujące wiele przeglądarek, połącz window.matchMedia z window.onbeforeprint /window.onafterprint .
Poniższe informacje mogą skutkować wielokrotnymi wywołaniami funkcji beforePrint() i afterPrint() (na przykład Chrome uruchamia odbiornik za każdym razem, gdy podgląd wydruku jest regenerowany
). Może to być pożądane lub nie, w zależności od konkretnego przetwarzania, które wykonujesz w odpowiedzi na wydruk.
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);
}
Więcej:https://tjvantoll.com/2012/ 15.06.201/wykrywanie-żądania-druku-z-javascriptem/