是否可以在不破坏后代事件侦听器的情况下附加到innerHTML?

是否可以在不破坏后代事件侦听器的情况下附加到innerHTML?,第1张

是否可以在不破坏后代事件侦听器的情况下附加到innerHTML?

不幸的是,

innerHTML
即使您尝试附加,分配给也会导致所有子元素的破坏。如果要保留子节点(及其事件处理程序),则需要使用DOM函数:

function start() {    var myspan = document.getElementById("myspan");    myspan.onclick = function() { alert ("hi"); };    var mydiv = document.getElementById("mydiv");    mydiv.appendChild(document.createTextNode("bar"));}

编辑: 鲍勃的解决方案,从评论。发表您的答案,鲍勃!为此获得信誉。:-)

function start() {    var myspan = document.getElementById("myspan");    myspan.onclick = function() { alert ("hi"); };    var mydiv = document.getElementById("mydiv");    var newcontent = document.createElement('div');    newcontent.innerHTML = "bar";    while (newcontent.firstChild) {        mydiv.appendChild(newcontent.firstChild);    }}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5011574.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-14

发表评论

登录后才能评论

评论列表(0条)

保存