Per chiunque inciampo su questa risposta da Google, vorrei provare a chiarire le cose:
Come Ajay ha sottolineato, ci sono due eventi che vengono sparati per la stampa, ma non sono ben supportati; per quanto ho letto, sono supportati solo nei browser Internet Explorer e Firefox (6+). Questi eventi sono window.onbeforeprint e window.onafterprint, che (come ci si aspetterebbe) spareranno prima e dopo il lavoro di stampa.
Tuttavia, come sottolineato nel collegamento di Joe (https://stackoverflow.com/a/9920784/578667), che non è esattamente come viene implementato in tutti i casi. Nella maggior parte dei casi, entrambi gli eventi si attivano prima del dialogo; in altri casi, l'esecuzione dello script potrebbe essere interrotta durante la finestra di dialogo di stampa, quindi entrambi gli eventi possono essere attivati contemporaneamente (dopo che la finestra di dialogo è stata completata).
Per ulteriori informazioni (e il supporto del browser) per questi due eventi:
https://developer.mozilla.org/en-US/docs/DOM/window.onbeforeprint
https://developer.mozilla.org/en-US/docs/DOM/window.onafterprint
La risposta breve: se siete la speranza di interferire con il flusso di stampa, non fare . Se speri di attivare il codice dopo la stampa, non funzionerà come vuoi; aspettarsi un supporto scarso del browser e provare a degradare con garbo.
Che cosa stai cercando di ottenere esattamente?Cosa intendi per "la libreria è ottima per lo schermo ma non per la stampa"? –
Cosa c'entra una libreria JavaScript con la stampa? Il browser non richiama alcun script di pagina quando si stampa comunque. – Pointy
usa la funzione window.onprint, window.onafterprint, window.onbeforeprint –