使用javascript打印屏幕上隐藏的部分

使用javascript打印屏幕上隐藏的部分,javascript,jquery,html,css,printing,Javascript,Jquery,Html,Css,Printing,我遇到了一个以前从未遇到过的小问题:我使用javascript(jQuery)在网页的选项卡中显示信息的不同部分。因此,我要做的是隐藏未被查看的选项卡,只显示正在查看的选项卡 这工作得很好,但现在我添加了一个特定于打印的样式表,我希望打印所有选项卡的信息,而不仅仅是正在查看的选项卡 如何撤消打印样式表中这些部分的javascript隐藏 编辑:一些附加信息: 我正在使用jQuery隐藏所有div.tabs部分,并且在我的打印样式表中设置了: .wrapper div.tabs sections

我遇到了一个以前从未遇到过的小问题:我使用javascript(jQuery)在网页的选项卡中显示信息的不同部分。因此,我要做的是隐藏未被查看的选项卡,只显示正在查看的选项卡

这工作得很好,但现在我添加了一个特定于打印的样式表,我希望打印所有选项卡的信息,而不仅仅是正在查看的选项卡

如何撤消打印样式表中这些部分的javascript隐藏

编辑:一些附加信息:

我正在使用jQuery隐藏所有
div.tabs部分
,并且在我的打印样式表中设置了:

.wrapper div.tabs sections {
    display: block;
}

假设
.wrapper div.tabs sections
的值高于
div.tabs sections
的值,则会使这些节可见。但是它没有…

您可以添加一个额外的类来将display:block添加到print.css中。

最好的方法是更改JavaScript,以便它修改应用于元素的类,而不修改
.style.display
。然后,您可以使用screen和print媒体样式表以不同的方式针对这些类中的元素


快速而肮脏的方法是使用
!重要信息
在您的打印媒体样式表中。

您真正需要的是CSS。只需定义一些打印时显示的内容

下面是一些例子:

@media print {
    div.print_show{ dispay: block; }
    span.print_show{ display: inline; }
    .print_hide{ display: none; }
}

谢谢,但问题是加载DOM后,javascript将同一部分的
显示设置为
none
,无论我在样式表中设置了什么。谢谢,
!重要提示
有效!我已经编辑了我的问题,但现在我不明白为什么
!重要提示
有效,但我的更具体/更高值选择器无效。顺便说一句,您的最佳方法似乎是合乎逻辑的,为什么我没有想到…@jeroen-没有什么比style属性更具体了,
.style.foo
修改了style属性。无论你用jQuery做什么,几乎可以肯定的是修改
.style.foo
。这正是我正在做的。是的,我在上一次编辑中尝试了更好的解释。对不起,我会编辑。但如果David的答案有效的话,也许你应该接受它。谢谢你的帮助,@David Dorward的类交换解决方案似乎是最好的。