使用自定义HTML标记打印文档

时间:2014-05-21 20:05:51

标签: jquery

我需要打印一份在打印时格式不同的文档。我可以使用@media进行打印,并指定一些我想要打印的样式,其格式与屏幕上不同。

但是,文档的屏幕版本使用了一些自定义HTML属性,这些属性可以防止部分文档以打印方式呈现。为了让我能够打印整个文档,我需要使用类似jQuery的.removeAttr('customAttr')。

例如,我的CSS中有以下内容

@media screen {
    .myClass h1 {
        display:none
    }
} 

所以我尝试使用像

这样的东西
if( $('.myClass h1').css('display') != 'none') {
    $('.anotherClass').removeAttr('customAttr');
}

不幸的是它不起作用。那么,如何让我的jQuery仅在打印版本中执行?

1 个答案:

答案 0 :(得分:2)

我认为没有办法做到这一点。一个解决方案是在调用window.print()之前放置一个调用函数的按钮并执行操作,或者创建一个新窗口,但如果用户转到File,则打印它无法删除属性。我认为,最好的解决方案是将打印按钮放在某处。