Google chrome extension 如何取消/覆盖chrome.tabs.insertCSS的效果

Google chrome extension 如何取消/覆盖chrome.tabs.insertCSS的效果,google-chrome-extension,Google Chrome Extension,我的Chrome扩展使用Chrome.tabs.insertCSS方法修改页面样式。有时我需要关闭修改,有没有办法不用重新加载页面 我知道一种方法:用chrome.tabs.executeScript注入脚本,然后创建style元素。然后我可以通过删除插入的style元素来取消修改 但可能还有更直接的解决方案。看看我在这里建议的解决方案:TL;DR wrapp your inbody.customclassname并通过JavaScript在body上切换该类名。上面应该是“wrapp your

我的Chrome扩展使用
Chrome.tabs.insertCSS
方法修改页面样式。有时我需要关闭修改,有没有办法不用重新加载页面

我知道一种方法:用
chrome.tabs.executeScript
注入脚本,然后创建
style
元素。然后我可以通过删除插入的
style
元素来取消修改


但可能还有更直接的解决方案。

看看我在这里建议的解决方案:TL;DR wrapp your in
body.customclassname
并通过JavaScript在
body
上切换该类名。上面应该是“wrapp your style in
body.customclassname
”。好的,我理解您的解决方案,谢谢。但是,它需要JavaScript来设置body类。如果我注入JavaScript,那么我最好只创建样式节点。但是我可以使用
body:not(.disabled custom style)
来避免注入JavaScript,直到需要禁用样式为止。是的,你是对的。无论哪种方式,您都需要一些JavaScript。(您可能可以插入取消第一个页面的CSS,但这对于任何随机页面来说都是很困难的,如果不是不可能的话)我喜欢我的解决方案是,一旦CSS插入页面中,切换需要最少的代码。添加和删除
节点对我来说有点笨手笨脚。(尽管最后差别不大)