我知道直到最近 onafterprint
还只是 IE 原生的。最近 HTML5 已将其添加到事件列表中。我只在 Firefox 中成功使用它,但无法在 Chrome 或 Safari 中使用它。
它似乎只在 Firefox 中使用时在正文中起作用:
<body onafterprint="printIt()">
函数的脚本是这样的:
$(document).ready(function() {
$('.printMe').click(function() {
window.print();
return false;
});
});
function printIt()
{
$('#confirmPrint').show();
};
通过单击 .printMe
按钮,它会打开打印窗口。单击打印或取消将在 #confirmPrint
中显示一条消息。我不太担心能够判断他们是点击取消还是打印。我只关心它在 Chrome 和 Safari 中的运行情况。任何帮助深表感谢。我也在使用 jQuery,如果这还不是很明显的话。
最佳答案
经过一些实验,我想我可以肯定地说 onafterprint
不值得考虑。
- 即使用户在打印对话框中单击
Cancel
而不是OK
,Firefox 也会触发它 - IE8 显然在打印对话框出现之前就触发了它
- Chrome 根本不会触发它
相反,在调用 print()
之后直接做任何您想做的事情,即
$(document).ready(function() {
$('.printMe').click(function() {
window.print();
printIt();
return false;
});
});
function printIt()
{
$('#confirmPrint').show();
};
关于javascript - 在 Chrome 和 Safari 中使用 onafterprint,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9893888/