如何在没有MutationObserver通知的情况下对DOM进行更改?

问题描述

我正在尝试以编程方式向一些网站的div插入文本,但随后整个UI损坏并且更改被拒绝。看来MutationObserver会跟踪以编程方式进行的任何更改。但这似乎是一个普遍的问题,因为语法开发人员似乎已经遇到了这个问题:

这种方法的另一个(也许更大)的问题是,当有人尝试更改其DOM时,网站会不喜欢它。站点上运行的代码期望它创建的DOM不会被任何其他代码更改。如果这个假设被打破,那么坏事就会发生。因此,网站和文本编辑器开发人员都开始寻找禁用语法的方法包括诸如ProseMirror,quill.js,Draft.js等流行的编辑器。 Source

但是似乎仍然有一种解决方法

如果我们要对DOM进行任何更改,我们需要确保页面上运行的代码不会注意到它。 Source

如何在不通知代码的情况下更改DOM?

编辑:

例如Facebook。如果您尝试在“创建帖子”对话框中插入文本,则会崩溃并关闭

我正在chrome的控制台中尝试以下操作,因为已显示“创建帖子”:

editor = document.querySelectorAll(`[role="textBox"]`)[0];
editor.focus();
document.execCommand("insertText",false,"some text");

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)