我需要打印一份在打印时格式不同的文档。我可以使用@media进行打印,并指定一些我想要打印的样式,其格式与屏幕上不同。
但是,文档的屏幕版本使用了一些自定义HTML属性,这些属性可以防止部分文档以打印方式呈现。为了让我能够打印整个文档,我需要使用类似jQuery的.removeAttr('customAttr')。
例如,我的CSS中有以下内容
@media screen {
.myClass h1 {
display:none
}
}
所以我尝试使用像
这样的东西if( $('.myClass h1').css('display') != 'none') {
$('.anotherClass').removeAttr('customAttr');
}
不幸的是它不起作用。那么,如何让我的jQuery仅在打印版本中执行?
答案 0 :(得分:2)
我认为没有办法做到这一点。一个解决方案是在调用window.print()
之前放置一个调用函数的按钮并执行操作,或者创建一个新窗口,但如果用户转到File,则打印它无法删除属性。我认为,最好的解决方案是将打印按钮放在某处。