집 >데이터 베이스 >MySQL 튜토리얼 >'onbeforeprint()' 및 'onafterprint()'에 대한 브라우저 간 호환성을 달성하는 방법은 무엇입니까?
onbeforeprint() 및 onafterprint()에 해당하는 크로스 브라우저
IE는 onbeforeprint() 및 onafterprint() 기능을 제공하지만, 이 기능은 모든 브라우저에서 기본적으로 지원되지 않습니다. 크로스 브라우저 솔루션의 경우 window.matchMedia 및 window.onbeforeprint/window.onafterprint 활용을 고려하세요.
window.matchMedia 사용
window.matchMedia를 사용하면 다음을 감지할 수 있습니다. CSS 미디어 쿼리가 활성화될 때. 인쇄의 경우 미디어 쿼리 '인쇄'를 사용할 수 있습니다. 인쇄 전후에 함수를 실행하려면 window.matchMedia('print') 개체에 이벤트 리스너를 추가하세요.
if ('matchMedia' in window) { window.matchMedia('print').addListener(function(media) { if (media.matches) { beforePrint(); } else { $(document).one('mouseover', afterPrint); } }); }
이 기술을 사용하면 beforePrint() 및 afterPrint()가 여러 번 호출될 수 있습니다. , 브라우저의 동작에 따라 다릅니다.
window.onbeforeprint/window.onafterprint 사용
IE와 Firefox는 window.onbeforeprint 및 window.onafterprint 이벤트를 지원합니다. jQuery를 사용하여 다음 이벤트를 들어보세요.
$(window).on('beforeprint', beforePrint); $(window).on('afterprint', afterPrint);
구현
이 크로스 브라우저 접근 방식에 대한 자세한 내용은 https://tjvantoll.com/2012에서 찾을 수 있습니다. /06/15/감지-인쇄-요청-with-javascript/
위 내용은 'onbeforeprint()' 및 'onafterprint()'에 대한 브라우저 간 호환성을 달성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!