我想使用window.close()函数关闭具有打印对话框的窗口。
我意识到,如果窗口没有打印对话框,则window.close()函数会正常工作。
这是示例代码:
<button onclick="openWin()">Open "myWindow"</button>
<button onclick="closeWin()">Close "myWindow"</button>
<script>
var myWindow;
function openWin() {
myWindow = window.open("", "myWindow", "width=200,height=100");
myWindow.document.write("<p>This is 'myWindow'</p>");
}
function closeWin() {
myWindow.close();
}
</script>
但是,如果将print()函数放入上面的代码中,在关闭打印对话框之前,我永远不会单击关闭窗口按钮。
这是示例代码
<button onclick="openWin()">Open "myWindow"</button>
<button onclick="closeWin()">Close "myWindow"</button>
<script>
var myWindow;
function openWin() {
myWindow = window.open("", "myWindow", "width=200,height=100");
myWindow.document.write("<p>This is 'myWindow'</p>");
myWindow.print();
}
myWindow.print() {
myWindow.close();
}
我想知道为什么会发生这种情况,以及如何关闭包含打印对话框的窗口。
谢谢。
答案 0 :(得分:0)
将myWindow.close()放在函数内,然后调用它,而不是对函数单独进行mywindow.print() myWindow.close();
。似乎很奇怪,您正在执行myWindow.print()并关闭其中的内容,我认为这不起作用。