我面临着一个非常奇怪的问题。我正在从 javascript 文件调用 window.print() 。这在 Safari、IE、Firefox 中运行良好……直到两小时前,它在 Chrome 中也运行良好。 (版本29.0.1547.57)
我没有更改我的 javascript 文件中的任何重要内容(实际上 - 我只是删除了一些注释...),但现在发生的情况非常奇怪:在 Chrome 中,调用 window.print() 时不会打开打印对话框。什么都没发生。但是,当我按下重新加载时,打印对话框立即打开。
其他浏览器中的行为没有改变。在 Chrome 中调试时,我可以看到 window.print() 按预期被调用,并且脚本在此之后继续运行。只有按下重新加载后才会显示打印对话框。
有人经历过类似的事情吗?我还尝试在 setTimeout() 中调用 window.print() ,但这并没有改变任何东西。当我调试要打印的页面内容时,它似乎已完美加载。
很抱歉问,但我在研究时没有发现任何东西。任何帮助,将不胜感激!
谢谢你!
Wasiim 是对的,Chrome 有一个 bugwindow.print()
当有一个时不起作用<video>
DOM 中的标签。我通过调用这个函数解决了这个问题:
function printPage() {
window.print();
//workaround for Chrome bug - https://code.google.com/p/chromium/issues/detail?id=141633
if (window.stop) {
location.reload(); //triggering unload (e.g. reloading the page) makes the print dialog appear
window.stop(); //immediately stop reloading
}
return false;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)