【问题标题】:How to tell when window.print() completes on Android如何判断 window.print() 何时在 Android 上完成
【发布时间】:2020-06-10 09:08:01
【问题描述】:

我正在为我们的慈善机构建立一个需要打印标签的网站。该页面有 2 个主要 div,它们相互重叠。一个 div 包含一个表单,另一个包含需要打印的标签。当用户按下表单上的打印按钮时,表单的 div 设置样式设置为 display:none,另一个 div 设置为 display:block。然后我调用 window.print()

问题是 window.print 是异步的,所以我不知道它什么时候完成。结果,javascript 在切换回表单窗口之前等待 15 秒。这在大多数情况下都可以正常工作,但有时如果用户需要很长时间才能单击 window.print 的打印按钮,我会得到表单的屏幕截图。

我也尝试过 window.onafterprint,但该事件会立即在 Chrome/Android 上发生。

有没有办法可靠地打印包含标签的 div(即知道 print.window 进程何时完成)?请注意,该网站将仅用于慈善机构使用的基于 Android 的平板电脑,因此至少可以限制问题。

【问题讨论】:

  • 调用 window.onafterprint() 而不是 window.print()
  • 我正在调用 window.onafterprint,但在 Android 上我打印的是表单,而不是标签。在 Windows 上它可以正常工作。这是代码: window.onafterprint= function() { document.getElementById("label").style.display="none"; document.getElementById("wrapper").style.display="block"; } window.print();

标签: javascript android printing


【解决方案1】:

您可以在最后添加一个控制台输出,以便查看它何时完成

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-10
    • 1970-01-01
    • 1970-01-01
    • 2018-03-01
    相关资源
    最近更新 更多