在window.open之后,无法在Safari for Mac中打印

时间:2012-02-06 21:48:15

标签: javascript macos printing safari window.open

我使用window.open函数创建一个带有Javascript代码的辅助浏览器窗口,并使用一些HTML内容以编程方式填充它。它适用于我的应用程序支持的所有浏览器,除了一个:Mac上的Safari。实际上,窗口本身没问题,但是禁用了打印命令。有人知道为什么吗?我应该提一下,显示此窗口的主要原因是允许用户打印一些数据。我想我可以在页面中实现“打印”按钮,但我不愿意(也可能不起作用,但我还没有尝试过)。

以下是我用于创建HTML内容的代码的简化示例:

        var pp = window.open("", "_blank");
        pp.document.writeln("<html>");
        pp.document.writeln("<head>");
        pp.document.writeln("<title>");
        pp.document.writeln("Hello");
        pp.document.writeln("</title>");
        pp.document.writeln("</head>");
        pp.document.writeln("<body>");
        pp.document.writeln("The body");
        pp.document.writeln("</html>");
        pp.document.close();

我尝试了代码的变体,没有任何成功。我的测试是在Mac OS X 10.6.8上使用Safari 5.1完成的。欢迎任何帮助!

1 个答案:

答案 0 :(得分:1)

让窗口打印出来:

</html>添加之前:

pp.document.writeln("<script type='text/javascript'>window.print()</script>");