在不破坏后代事件监听器的情况下附加到innerHTML,可以使用以下方法:
Element.insertAdjacentHTML()
方法:Element.insertAdjacentHTML()
方法可以将字符串形式的HTML代码插入到指定元素的某个位置,而不会影响后代事件监听器。
示例代码:
const element = document.getElementById('myElement');
element.insertAdjacentHTML('beforeend', '<div>New content</div>');
DocumentFragment
和Node.appendChild()
方法:DocumentFragment
是一个轻量级的文档对象,可以用来临时存储一组节点,然后一次性插入到文档中。这样做可以避免多次操作DOM,提高性能。
示例代码:
const fragment = document.createDocumentFragment();
const newDiv = document.createElement('div');
newDiv.textContent = 'New content';
fragment.appendChild(newDiv);
document.getElementById('myElement').appendChild(fragment);
这两种方法都可以在不破坏后代事件监听器的情况下附加到innerHTML,推荐使用这些方法来实现。
领取专属 10元无门槛券
手把手带您无忧上云