javascript – 尝试在DOM加载后注入CSS(编写Chrome扩展)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 尝试在DOM加载后注入CSS(编写Chrome扩展),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1602字,纯文字阅读大概需要3分钟。
内容图文
![javascript – 尝试在DOM加载后注入CSS(编写Chrome扩展)](/upload/InfoBanner/zyjiaocheng/742/44cef3ee0cb143e8abc82e614530eed9.jpg)
我正在尝试编写一个Chrome扩展程序,它只是将一个CSS文件添加到页面的css定义的末尾.
Google的文档说我可以使用chrome.tabs.insertCSS()函数将css添加到页面,但是从包含javascript文件的content_script运行它什么都不做.
我正在尝试两种不同的方法,如Google网站上记录的那样.我有一个alert()语句告诉我脚本在哪里,但它从不运行最终警报.这让我觉得我的脚本可能会在中间的某个地方崩溃.
这是我的源文件:
的manifest.json
{
"name": "Custom CSS to GOOGLE",
"version": "1.0",
"description": "The first extension that I made.",
"content_scripts": [
{
"matches": ["http://*/*"],
//"js": ["style_injector.js"],
"js": ["inject.js"],
"css": ["newstyle.css"]
}
],
"permissions": [
"tabs", "http://*/*"
]
}
inject.css
alert("newpage");
chrome.tabs.executeScript(null, {code:"document.body.bgColor='red'"});
chrome.tabs.insertCSS(
null,
{
code:"body{background:red;}"
}
);
alert("finishpage");
解决方法:
“我正在尝试编写一个Chrome扩展程序,只是将一个CSS文件添加到页面的css定义的末尾”
您可能需要将!important标志添加到要更改的css中:
When the browser is displaying an HTTP page and the user clicks this extension’s browser action, the extension sets the page’s bgcolor property to ‘red’. The result, unless the page has CSS that sets the background color, is that the page turns red.
…!important标志是更改某些内容的唯一方法,但您可能必须编写js来覆盖其他样式,请检查this
正如serg所说,background.html页面是你使用injectCSS api的地方:
/* in background.html */
chrome.browserAction.onClicked.addListener(function(tab) {
chrome.tabs.executeScript(null,
{code:"document.body.bgColor='red'"});
});
/*in manifest.json */
"permissions": [
"tabs", "http://\*/*"
],
内容总结
以上是互联网集市为您收集整理的javascript – 尝试在DOM加载后注入CSS(编写Chrome扩展)全部内容,希望文章能够帮你解决javascript – 尝试在DOM加载后注入CSS(编写Chrome扩展)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。