发表于2018-07-17 22:39:51
在当前,IE浏览器可以说是非常不受大家待见了,虽然连微软都已经放弃了它,但是在我们的日常生活中,却还是处处见到它的身影。
特别是在某些单位,还存在大量WIN XP/IE8的情况。于是,我们不得不耐心来做着兼容。
最近笔者在做WEB打印时就遇到了一个小麻烦。鉴于使用场景,我们希望在用户点击打印按钮时,能直接打印我们指定的页面。所以我们采用了在该页面(A)中append一个iframe来调用我们的打印页(B),在打印页(B)中使用window.print()来进行打印。
在测试中,各浏览器的打印效果都比较理想,不过在测试IE时,会发现打印的页面不是我们预期中的iframe中的页面B,而是父页面A。
解决方法如下:
if(isIE){ //isIE,判断是否是IE浏览器,请自行实现,此处略 document.execCommand("print"); }else{ window.focus(); window.print(); }