我是Firefox及其扩展的新手。有没有像每次页面加载时使用JavaScript的脚本?我的Chrome扩展插入了一个使用js创建链接标签的css文件。我该如何将它移植到Firefox?相当于Firefox扩展中的内容脚本?
5
A
回答
7
您需要pageMod API。
var pageMod = require("page-mod");
pageMod.PageMod({
include: "*.example.org",
contentScript: 'window.alert("Page matches ruleset");'
});
0
您可以使用mozIJSSubScriptLoader来执行JavaScript :每次webpage loads时间(铬//myExtension/content/script.js)。下面是你需要根据自己的chrome目录
window.addEventListener("load", function load(event){
window.removeEventListener("load", load, false); //remove listener, no longer needed
myExtension.init();
},false);
var myExtension = {
init: function() {
var appcontent = document.getElementById("appcontent"); // browser
if(appcontent){
appcontent.addEventListener("DOMContentLoaded", myExtension.onPageLoad, true);
}
var messagepane = document.getElementById("messagepane"); // mail
if(messagepane){
messagepane.addEventListener("load", function(event) { myExtension.onPageLoad(event); }, true);
}
},
onPageLoad: function(aEvent) {
var doc = aEvent.originalTarget; // doc is document that triggered "onload" event
// do something with the loaded page.
// doc.location is a Location object (see below for a link).
// You can use it to make your code executed on certain pages only.
var loader = Components.classes["@mozilla.org/moz/jssubscript-loader;1"].getService(Components.interfaces.mozIJSSubScriptLoader);
loader.loadSubScript("chrome://myExtension/content/script.js", doc);
// add event listener for page unload
aEvent.originalTarget.defaultView.addEventListener("unload", function(event){ myExtension.onPageUnload(event); }, true);
},
onPageUnload: function(aEvent) {
// do something
}
};
0
我以前在Firefox使用的Greasemonkey修改示例代码。事实上,Chrome扩展开始是为了模仿Greasemonkey,并且是内容脚本的起源。
相关问题
- 1. Chrome扩展内容脚本
- 2. Chrome扩展内容脚本中的JQueryUI
- 3. 带有CSS和背景图片的Firefox扩展内容脚本
- 4. Firefox扩展内容脚本调用/生命周期
- 5. Chrome扩展内容脚本访问扩展框架
- 6. 当扩展的内容脚本处于活动状态时设置图标
- 7. 基于URL注入Chrome浏览器扩展内容脚本
- 8. Chrome扩展程序 - 内容脚本匹配限于权限吗?
- 9. 相当于pyqt4中的gtk扩展器
- 10. 在Firefox扩展中传递面板和PageMod内容脚本消息
- 11. Chrome扩展代码和内容脚本vs注入脚本
- 12. 如何调试附加main.js,而不仅仅是Firefox扩展的内容脚本?
- 13. Chrome扩展中所有内容脚本的一个websocket连接
- 14. 内容脚本中的Chrome扩展程序storage.sync.set引发异常
- 15. Chrome扩展内容脚本中的聚合物元素
- 16. 如何不继承铬扩展内容脚本中的样式
- 17. 在内容脚本的Chrome扩展中使用Gmail Api
- 18. 如何从Chrome扩展中的内容脚本获取变量?
- 19. 用于将内容脚本插入到Chrome扩展的网页中的URL
- 20. 在窗口小部件上运行内容脚本点击firefox扩展
- 21. 谷歌浏览器扩展 - 无法从内容脚本传递消息弹出页面中相同的扩展
- 22. 当内容扩展时向下移动的粘性页脚
- 23. 创建相当于IIS7的ISAPI扩展
- 24. Firefox内容脚本内存消耗
- 25. 从Chrome内容脚本扩展访问内嵌框架
- 26. 可以在内容脚本中使用`chrome。*`扩展API吗?
- 27. 在内容脚本和Chrome扩展中使用jQuery
- 28. 在Chrome扩展内容脚本中使用canvas drawImage
- 29. 在Chrome扩展中动态部署内容脚本
- 30. 当内容扩展时,内容和包装不能正常扩展
在什么页面上放置这个? browser.xul中包含的js文件也许? – 2012-02-28 18:06:37
@JacquesBlom:将其放入'lib/main.js'中,以便使用[Add-on SDK](https://addons.mozilla.org/en-US/developers/builder)构建的扩展。 – 2012-02-28 18:21:19
当我这样做:include:“facebook.com” - 它不会工作 – 2012-02-28 20:13:21