是否可以关闭打印对话框?

时间:2016-07-27 03:45:17

标签: javascript browser printing

通过使用window.print(),我们可以触发打开的打印对话框。

有没有办法关闭它?

事实证明(至少在Chrome / Chromium上),location.reload()会关闭它,但会重新加载页面。

是否还有其他更友好的方法/ API来关闭它?

3 个答案:

答案 0 :(得分:0)

您可以查看window.close。这将关闭当前窗口。

var opnePrint = window.print();
//Rest of code
 openPrint.close();

答案 1 :(得分:0)

如何使用setTimeout

window.print(); //this triggers the print

setTimeout("closePrintView()", 3000); // delay required for IE to realise what's going on

window.onafterprint = closePrintView(); // this is the magic

// this function simply runs something you want it to do 
function closePrintView() {
  // do something
}

编辑:如果它有用,还有onbeforeprint

编辑2:在{/ strong>对话框出现之前,onbeforeprint显示 <...}

onafterprint对话框出现之前被触发。因此,无法知道文档是否已打印或是否已取消对话框。

答案 2 :(得分:0)

试试这个:

var window = window.open();
window.print();
window.onfocus = function () {
    window.close();
}