gpt4 book ai didi

javascript - 如何创建在 document.write 中存活的 JS 事件监听器?

转载 作者:行者123 更新时间:2023-11-29 09:57:39 26 4
gpt4 key购买 nike

我正在将事件监听器附加到窗口对象。然后在脚本的后面,使用了 document.write。 (我知道,这是邪恶的。我在这件事上别无选择。)问题是,document.write 消灭了我的听众。有没有可能避免这种情况?

这是一个说明问题的 fiddle :http://jsfiddle.net/Fuhzu/

最佳答案

那是不可能的。 document.write 卸载当前文档,并创建一个新文档。

用于确认的演示:http://jsfiddle.net/Gk3cX/

window.test = document; //Cache document
document.write('<button onclick="alert(window.test===document)">CLick</button>');
// Clicking shows false! The document has changed!

覆盖当前文档而不卸载的唯一选择是innerHTML:

document.body.innerHTML = "Overwritten document's content, kept events.";

关于javascript - 如何创建在 document.write 中存活的 JS 事件监听器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8672833/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com