为啥 Youtube 评论不会触发 DOM 突变?

Posted

技术标签:

【中文标题】为啥 Youtube 评论不会触发 DOM 突变?【英文标题】:Why don't Youtube comments fire a DOM mutation?为什么 Youtube 评论不会触发 DOM 突变? 【发布时间】:2014-06-11 02:07:30 【问题描述】:

我正在开发 Google Chrome 扩展程序。每次它所在的页面发生变化时,它的内容脚本都应该触发,而且大多数时候都会触发。我为此使用了MutationObserver

但是,当我在 Youtube(以及可能我没有注意到问题的其他网站)上并向下滚动以加载 cmets 时,MutationObserver 不会触发。为什么会这样,DOM 不应该改变吗?

编辑:我可能想补充一点,我将观察者设置为监视 document.bodysubtreechildListattribute 的变化。

【问题讨论】:

【参考方案1】:

YouTube cmets 在 iframe 中加载。如果您想观察 YouTube cmets 的突变,您必须在清单中将您的内容脚本设置为 "all_frames": true,并添加要匹配的 iframe URL 模式。

【讨论】:

哦!这就是问题所在。非常感谢您帮助我,因为您可能已经注意到,我对这个世界还是陌生的。

以上是关于为啥 Youtube 评论不会触发 DOM 突变?的主要内容,如果未能解决你的问题,请参考以下文章

Vue.js。子组件中的变异道具不会触发警告。想知道为啥

突变后的 Apollo 更新不会触发重新渲染

为啥我的 Vue 应用程序中的 v-model 输入会在更改时触发突变错误?

为啥连接的 onclick 事件不会触发?

当项目没有运行 ptest 时,不会触发 Pitest 突变的质量门

GraphQL:突变运行时订阅未触发