对DOM的Javascript更改是否会影响页面的打印版本?

时间:2014-12-05 20:37:10

标签: javascript printing

我需要通过Javascript对页面进行排序。

如果我进行这样的排序,然后用户决定打印页面,是否会打印原始DOM或更新的DOM?

我可以看到它是原始DOM,因为它重新加载页面,然后应用@media打印样式,或者我也可以看到它只是为页面切换CSS。

如果浏览器之间存在差异,我真的只关心Chrome和Firefox。

2 个答案:

答案 0 :(得分:0)

在Chrome和FF中,您都会在打印预览和Chrome的网络标签中看到更新的DOM,不会记录与服务器的新互动。

http://jsfiddle.net/zLL4814s/

<h1 id="headerTag">Hello</h1>

<button onclick="changeText()">click to change text</button>

JS

window.changeText = function() {
    document.getElementById('headerTag').innerHTML = "Bye";
    window.print();
}

答案 1 :(得分:0)

烨。如果我们打印页面,打印的内容基本上是视口的内容,如果存在用于更好样式打印的媒体查询(例如@media print { }),则仅与浏览器视图不同。

也就是说,确保您的页面可打印需要一些TLC,特别是如果UI具有非平凡的复杂性。通常情况下,如果某个人在HR中有人可能有一天想要打印,因为它有图表,数据等等,通常只需display: none;除了页面上有趣的组件之外的所有页面使用媒体查询