关闭打印对话框后自动关闭窗口吗?

电脑杂谈  发布时间:2020-05-31 05:10:36  来源:网络整理

stamper自动电测机-自动划线墨盒_京瓷1635复印机打印能关闭_打印机服务自动关闭

如果在调用print()之后尝试关闭窗口,则可能会立即关闭窗口,而print()将无法工作. 这是你不应该做的:

window.open();
...
window.print();
window.close();

stamper自动电测机-自动划线墨盒_京瓷1635复印机打印能关闭_打印机服务自动关闭

此解决方案将在Firefox中运行,因为在print()调用中,它将等待打印完成,然后继续处理javascript并关闭窗口. IE将失败,因为它调用了close()函数而没有等待print()调用完成. 在完成打印之前,弹出窗口将关闭.

解决此问题的一种方法是使用“ onafterprint”事件,但我不建议您使用它打印机服务自动关闭,因为这些事件只能在IE中使用.

京瓷1635复印机打印能关闭_stamper自动电测机-自动划线墨盒_打印机服务自动关闭

最好的方法是在关闭打印对话框后关闭弹出窗口(打印完成或取消). 此时,弹出窗口将处于焦点状态,您可以使用“ onfocus”事件关闭弹出窗口.

为此,只需在弹出窗口中插入以下JavaScript嵌入代码:

京瓷1635复印机打印能关闭_stamper自动电测机-自动划线墨盒_打印机服务自动关闭

<script type="text/javascript">
window.print();
window.onfocus=function(){ window.close();}
</script>

适用于所有当前浏览器:

京瓷1635复印机打印能关闭_stamper自动电测机-自动划线墨盒_打印机服务自动关闭

        setTimeout(function () { window.print(); }, 500);
        window.onfocus = function () { setTimeout(function () { window.close(); }, 500); }

如果在调用print()之后尝试关闭窗口,则可能会立即关闭窗口打印机服务自动关闭,而print()将无法工作. 这是您不应该做的: window.open(); ... window.print(); window.close();该解决方案将在Firefox中运行,因为print()调用...


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-228458-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...