我试图在用户打印这个巨型表单之前隐藏一些div,然后再显示div.因此,我想忽略页面的其余部分,只打印表单本身.
当用户单击打印按钮时,我可以打开一个单独的页面.唯一的问题是形式真的很长,这样做会非常繁琐.
编辑:我之前的问题实际上并没有反映我在寻找什么.所以我把它改成了现在的那个.
还要感谢所有建议的window.onbeforeprint和window.onafterprint.这与我编辑过的问题有关.
看看window.onbeforeprint和window.onafterprint(原始问题询问如何以编程方式进行,我相信).
更好的方法是使用专门用于打印的样式.换句话说,你的div可能看起来像这样:
My Info
然后你会在样式表中有这个:
.someClass {font-family:arial;} @media print { .noPrint { display: none; } }
如果您愿意,也可以将它放在一个单独的样式表中,这样您就不必混合样式:
您的屏幕样式表可以以一种方式定义".someClass",然后您的打印样式表可以使它以完全不同的方式定义.
IE支持onbeforeprint
和onafterprint
,但你真正想要的是打印样式表.
另见:这个答案