Javascript打印弹出窗口在Firefox/Chrome中工作,但在Internet Explorer中不工作
以下代码行在浏览器弹出窗口中创建html页面,然后为用户打印弹出窗口:Javascript打印弹出窗口在Firefox/Chrome中工作,但在Internet Explorer中不工作,javascript,html,printing,Javascript,Html,Printing,以下代码行在浏览器弹出窗口中创建html页面,然后为用户打印弹出窗口: function printPage(htmlPage) { var w = window.open("about:blank"); w.document.write(htmlPage); w.print(); } 这段代码成功地在Firefox和Chrome中打开了一个打印对话框。但是,在IE中,不显示打印对话框。有什么建议吗 我还尝试在调用print()后关闭弹出窗口,因为其他人建议修复此问题: fu
function printPage(htmlPage)
{
var w = window.open("about:blank");
w.document.write(htmlPage);
w.print();
}
这段代码成功地在Firefox和Chrome中打开了一个打印对话框。但是,在IE中,不显示打印对话框。有什么建议吗
我还尝试在调用print()后关闭弹出窗口,因为其他人建议修复此问题:
function printPage(htmlPage)
{
var w = window.open("about:blank");
w.document.write(htmlPage);
w.print();
w.close();
}
无效。close()
在尝试print()
之前,请先查看文档
.开发者控制台告诉了你什么?奇怪;在IE8上,函数存在于w
下,调用它时不会抛出错误,但不会发生任何事情。谢谢@josh3736,这已经成功了!问题是我试图关闭窗口,而不是文档。这现在起作用了。我知道这是一个旧的。。。但我只是好奇,这种行为是否有合理的解释。谢谢-这帮助我解决了Firefox的一个问题!“close()
关闭由open()
打开的文档流并强制呈现”。因此,看起来页面尚未完全呈现,因此无法打印。为什么?¯\_(ツ)_/¯
function printPage(htmlPage)
{
var w = window.open("about:blank");
w.document.write(htmlPage);
w.document.close();
w.print();
}