84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
我正在构建一个 chrome 扩展,我想向此电报页面附加一些元素,似乎只成功附加了文本,而不是整个 HTML。
const span = document.createElement("span"); span.innerHTML = '<span class="xxx">Foo,bar</span>'; const p = document.querySelector("p"); p.appendChild(span);
正如评论中所建议的那样,我验证了自己,实际上有一个 MutationObserver 当某些代码试图在文档树中的某个点改变某些内容时,它会实时更改 dom。
MutationObserver
因为没有标准方法来查找在 dom 上监听的实时 MutationObservers 实例(如果有的话),除非您可以努力查找保存该对象的变量在哪个范围内;最快的方法是用它的克隆替换 body 元素,所有 MutationObserver 都会消失。
document.body = document.body.cloneNode(true);
完成此操作后,当您尝试将元素附加到 dom 时,它将按预期进行相应更改,而不会受到干扰。
在寻找如何获取实时 MutationObserver 实例或解决该需求的工作方法是什么时,在 Stack Overflow 答案中找到了最后的线索?
是有没有办法从项目中删除所有的mutationObservers而不引用它?
正如评论中所建议的那样,我验证了自己,实际上有一个
MutationObserver
当某些代码试图在文档树中的某个点改变某些内容时,它会实时更改 dom。因为没有标准方法来查找在 dom 上监听的实时 MutationObservers 实例(如果有的话),除非您可以努力查找保存该对象的变量在哪个范围内;最快的方法是用它的克隆替换 body 元素,所有 MutationObserver 都会消失。
完成此操作后,当您尝试将元素附加到 dom 时,它将按预期进行相应更改,而不会受到干扰。
平心而论...
在寻找如何获取实时 MutationObserver 实例或解决该需求的工作方法是什么时,在 Stack Overflow 答案中找到了最后的线索?
是有没有办法从项目中删除所有的mutationObservers而不引用它?