根据不同业务平台的需求,分为全局打印和局部内容打印。浏览器提供的打印方法有:
window.print();//整个页面打印
和
iframe.contentWindow.print();//可实现局部内容打印
局部打印还有其他有方面,这里主要研究的是打印窗口的监听事件,所以不做过多的赘述。
下面来详细描述一下想要实现的内容,如下:
当弹出上述窗口后,我们可以选择打印或者取消打印,现我们想要实现当点击打印或取消后,系统再实现一些其他的功能操作,比如:弹出提示,您已操作成功!当然,提示这个没什么意义,但是我们可以根据实际情况做一些有意义的事。
一、window.print的监听
function beforePrint() {
alert('Before Print')
console.log('Before Print');
}
function afterPrint() {
alert('After Print')
console.log('After Print');
}
if (Window.matchMedia) {
var mediaQueryList = Window.matchMedia('print');
mediaQueryList.addListener(function(mql) (mql.matches) ? beforePrint(): afterPrint();
});
} else {
window.addEventListener('beforeprint', beforePrint, false);
window.addEventListener('afterprint', afterPrint, false);
}
二、iframe.contentWindow.print的监听
var newwindow = document.getElementById("testiframe").contentWindow
newwindow.onafterprint = function(){
//在这里做一些有意义的事情
}
newwindow.print()