【发布时间】:2021-11-26 18:31:18
【问题描述】:
根据official docs window.onbeforeprint 允许[s] 页面在打印开始之前更改其内容(例如,可能删除横幅)。
但是,这在我的情况下不起作用,因为 window.onbeforeprint 是异步触发的——就像 JS 中的任何事件一样。我确实在我的事件处理程序中更改了 DOM 内容,但这些更改不在打印预览中。只有当我取消第一次打印尝试并再次点击 Cmd+P 时,DOM 内的(第一个事件的)更改是打印预览的一部分。
我不是在谈论长时间运行的进程,比如从网上获取一些东西。只需在 DOM 中进行简单的复制/粘贴。
所以我想知道我在这里做错了什么,或者window.onbeforeprint 在打印之前更改内容是否毫无意义。
【问题讨论】:
标签: javascript printing event-handling dom-events