Javascript can';t使用firefox扩展将本地css文件插入网页
我读了一些帖子: 我做得很好,比如: 但我仍然无法将本地css文件注入网页 我的js代码是:Javascript can';t使用firefox扩展将本地css文件插入网页,javascript,css,firefox-addon,Javascript,Css,Firefox Addon,我读了一些帖子: 我做得很好,比如: 但我仍然无法将本地css文件注入网页 我的js代码是: var fileref = gBrowser.contentDocument.createElement("link"); fileref.setAttribute("rel", "stylesheet"); fileref.setAttribute("type", "text/css"); fileref.setAttribute("href", "resourc
var fileref = gBrowser.contentDocument.createElement("link");
fileref.setAttribute("rel", "stylesheet");
fileref.setAttribute("type", "text/css");
fileref.setAttribute("href", "resource://myExtension/skin/sty.css");
gBrowser.contentDocument.getElementsByTagName("head")[0].appendChild(fileref);
当我打字的时候”chrome://myExtension/skin/sty.css“在浏览器的位置栏中,我可以看到我的css文件,它非常简单:
* {color:red !important;}
但由于某种原因,页面中的文本没有变红
我在网页中查看了firebug,在头部标签中看到:
+ <link rel="stylesheet" type="text/css" href="resource://myExtension/skin/sty.css">
+
但是按下“+”符号并不会打开css文件内容
我错过了什么
谢谢 您可以使用样式表服务
var sss = Components.classes["@mozilla.org/content/style-sheet-service;1"]
.getService(Components.interfaces.nsIStyleSheetService);
var ios = Components.classes["@mozilla.org/network/io-service;1"]
.getService(Components.interfaces.nsIIOService);
var u = ios.newURI("chrome://myExtension/skin/sty.css", null, null);
if(sss.sheetRegistered(u, sss.USER_SHEET))
sss.unregisterSheet(u, sss.USER_SHEET);
我使用了
sss.loadAndRegisterSheet(u,sss.USER_SHEET)代码>而不是最后两行,它正在工作。尽管我希望它能用第一种方法工作。无论如何,谢谢你。