Firefox 如何修改使用封闭阴影dom的站点?

Firefox 如何修改使用封闭阴影dom的站点?,firefox,dom,firefox-addon-webextensions,shadow-dom,Firefox,Dom,Firefox Addon Webextensions,Shadow Dom,给定一个使用具有卷影根的web组件的站点,如何从扩展内容脚本访问或修改DOM?Firefox 63使用特权访问器元素。openOrClosedShadowRoot()允许webextensions访问卷影根,而不管其打开/关闭状态如何 其他API,如querySelectorAll仍受阴影dom隔离的影响,因此要找到阴影根,扩展必须通过NodeIterator或TreeWalker遍历整个树以检查阴影根。由于影子根可能会在稍后的时间被附加,所以在尝试访问影子DOM之前,扩展可能还必须等待通过变异

给定一个使用具有卷影根的web组件的站点,如何从扩展内容脚本访问或修改DOM?

Firefox 63使用特权访问器
元素。openOrClosedShadowRoot
()允许webextensions访问卷影根,而不管其打开/关闭状态如何

其他API,如
querySelectorAll
仍受阴影dom隔离的影响,因此要找到阴影根,扩展必须通过
NodeIterator
TreeWalker
遍历整个树以检查阴影根。由于影子根可能会在稍后的时间被附加,所以在尝试访问影子DOM之前,扩展可能还必须等待通过变异观察者进行页面修改,因此总体而言,这种方法不如使用
querySelector
,但至少是可行的