我正在编写Firefox扩展,并使用其附加SDK;但我无法弄清楚如何将数据文件夹中的本地CSS文件注入到网页中。如果有办法通过page_mod
包,那将是非常好的。通过Firefox扩展将CSS文件注入网页
8
A
回答
6
作为添加SDK 1.14有实验(API可能更改)支持这个功能的page-mod模块:
var pageMod = require("sdk/page-mod").PageMod({
include: "*",
contentStyleFile: require("sdk/self").data.url("my-style.css")
});
的精心指导使用页面MOD见Modifying Web Pages Based on URL。
有a page on the Addon SDK's wiki讨论与当前实施问题,虽然它似乎有点过时。
在引擎盖下,它使用nsIDOMWindowUtils .loadSheet()添加样式表而不触及页面的DOM。 (这个API是在Firefox 18中添加,看到bug 737003。在这之前,你必须使用nsIStyleSheetService这是类似的,但不是选项卡专用。)
在这之前,你可以使用页面MOD的内容脚本插入链接或样式元素(example)。感谢lwburk的评论,这里有更详细的详细描述Greasemonkey Hacks: Tips & Tools for Remixing the Web with Firefox By Mark Pilgrim: "Alter a Page's Style" section。
1
插入来自main.js CSS现在可以使用“页面-MOD”:
var data = require("sdk/self").data;
var pageMod = require("sdk/page-mod");
pageMod.PageMod({
include: "*.org",
contentStyleFile: data.url("my-page-mod.css")
});
+0
感谢您提及此!我更新了我的答案,以获得更新版本的Addon SDK。 – Nickolay
相关问题
- 1. Firefox扩展如何将本地css文件注入到网页中?
- 2. 通过DOM和Opera扩展将JQuery注入到实时网页
- 3. Firefox扩展覆盖注入JavaScript文件?
- 4. Firefox扩展:在网页中嵌入JavaScript
- 5. Firefox扩展将数据写入文件
- 6. 通过Chrome扩展选项有条件地注入CSS
- 7. 从网页Firefox扩展
- 8. 使用Firefox扩展公开文件写入网页
- 9. 网页Firefox插件或扩展程序
- 10. 如何使用Chrome扩展插件将按钮注入网页
- 11. 为Chrome扩展注入CSS
- 12. Chrome扩展未注入css
- 13. 通过Firefox扩展从网页中删除元素
- 14. 通过网址将JavaScript注入页面
- 15. 如何阻止Firefox通过Firefox扩展下载和应用CSS?
- 16. 通过Firefox扩展下载到Firefox
- 17. 无法通过Chrome扩展插入CSS
- 18. Firefox扩展即时HTML注入?
- 19. 在Firefox扩展中嵌入SWF文件
- 20. 使用Firefox扩展插入CSS
- 21. 使用Chrome扩展将CSS注入文档检查器
- 22. Firefox扩展文件结构
- 23. 从Firefox扩展中通知iFrame页面?
- 24. firefox扩展中的跨页面通信
- 25. Chrome扩展:通过内容脚本将JQuery对话框注入页面
- 26. FireFox为通过HttpServletResponse下载的文件添加txt扩展
- 27. 无法通过HKEY_CURRENT_USER安装Firefox扩展
- 28. IE扩展 - 注入Javascript文件
- 29. 没有文件扩展名的网页
- 30. 所有网页文件的PHP扩展?
这是不可能的,我,因为我是用的AppBuilder SDK – italiano40
@ italiano40使用XPCOM:你继续引用“ appbuilder SDK“。如果您的意思是附加SDK,请使用正确的术语。尽管它是一个高级主题,并且会使向前兼容性无效,从而保证了附加SDK通常提供的功能,但可以在附加SDK中使用XPCOM组件('require('chrome')')。 – Nickolay
参见:http://books.google.com/books?id=KWRE2C_S4YsC&pg=PA19&lpg=PA19&dq=mark+pilgrim+add+Global+Style&source=bl&ots=SnfX5Ad2WO&sig=CKoF9A0Ala96vphTeU4mK2dbMe4&hl=en&ei=GJ3iTpeJKKK2sQLBkMDvBQ&sa=X&oi=book_result&ct=result&resnum= 1&ved = 0CCQQ6AEwAA#v = onepage&q&f = false –