我的打字稿文件中有以下代码:
let body = document.body;
// let body = document.body.cloneNode(true);
body.querySelectorAll('button').forEach(b => {
b.removeAttribute('click.delegate');
});
我正在尝试更新和查询 dom 页面的正文以创建一个新的 html 文档,但是当我这样做时,它会更新当前页面以及我正在即时构建的页面。cloneNode 阻止我使用 querySelectorAll()。有任何想法吗?谢谢你的帮助。
你可以使用编程方式创建一个新body
元素document.createElement()
并将活动的innerHTML 分配document.body
给它。
let body = document.createElement('body');
body.innerHTML = document.body.innerHTML;
body.querySelectorAll('div').forEach(d => {
d.classList.add('red');
console.log(d)
});
.red {
background-color:tomato;
}
<body>
<div>
<button type='button'>Button</button>
</div>
</body>