javascript - 如何在 Chrome 扩展程序卸载/禁用时清理网页

标签 javascript html css google-chrome google-chrome-extension

我有一个 Chrome 扩展程序,可以在网页中插入一些标记。此标记通常被扩展程序插入的 CSS 隐藏。

当用户使用扩展程序的浏览器按钮关闭扩展程序时,我使用内容脚本删除所有标记。但是,当扩展被卸载或禁用时,标记会留在网页上,但隐藏它的 CSS 会被卸载。这留下了一个非常变形的网页。

在删除内容脚本和 css 之前,有什么方法可以清理这个插入的标记吗?

谢谢!

最佳答案

发布我最终采用的解决方案。

Chrome 有一个怪癖,当扩展被卸载时,扩展自动插入的 css(在 list 中列出)被删除。但是,由扩展程序以编程方式插入的 css 保留在原位。

因此,我将我的 css 插入从 list 切换为程序化。现在,即使用户卸载了扩展程序,CSS 仍保留在页面上以隐藏我的标记。直到下一页重新加载,此时 CSS 和标记都被丢弃。

不确定这个注入(inject)的 CSS 非移除行为是一个特性还是一个错误,但它现在可以正常工作。

关于javascript - 如何在 Chrome 扩展程序卸载/禁用时清理网页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23044348/

相关文章:

html - 如何自定义博客中的默认时间戳

javascript - 第三方网站加载时显示加载消息

iPhone & iPad 位置 : fixed bottom problem

javascript - 如何从 Javascript 获取 iOS 设备中的文档文件夹

javascript - 检查具有特定类的元素是否在主体内

javascript - 更新后的几分钟内服务器未分发更新的 javascript 文件

jquery - 3 panel scrollto 窗口左右滚动但从中间开始

javascript - 如何获取使用 `push` 添加到 Firebase 的新帖子的 id?

javascript - 尝试修复带有下拉菜单的导航栏到页面顶部

平板电脑的CSS媒体查询