我是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. 與內容腳本中通信Firefox擴展
- 4. 內容腳本沒有迴應內容腳本的Chrome擴展
- 5. 帶有CSS和背景圖片的Firefox擴展內容腳本
- 6. Firefox擴展內容腳本調用/生命週期
- 7. Chrome擴展(內容腳本)緩存CSS
- 8. Chrome擴展引用/從內容腳本
- 9. 停止內容腳本在Chrome擴展
- 10. Chrome擴展 - 內容腳本點播
- 11. 同域策略如何應用於Firefox和Chrome擴展中的後臺腳本(非內容腳本)?
- 12. 當我在firefox擴展中使用page-mod添加內容。內容腳本功能執行三次
- 13. 鉻擴展名 - 通知內容腳本關於被刪除的擴展名
- 14. Chrome擴展內容腳本訪問擴展框架
- 15. 當擴展的內容腳本處於活動狀態時設置圖標
- 16. Firefox附加組件中的Angularjs - 從內容腳本訪問擴展資源
- 17. 如何在Firefox Mobile(Fennec)擴展的內容腳本中使用jQuery?
- 18. Firefox擴展(SDK)中的內容腳本添加了事件偵聽器
- 19. Chrome擴展:內容腳本和網頁的腳本
- 20. Chrome擴展程序 - 內容腳本匹配限於權限嗎?
- 21. 基於URL注入Chrome瀏覽器擴展內容腳本
- 22. 相當於pyqt4中的gtk擴展器
- 23. 在Firefox擴展中傳遞面板和PageMod內容腳本消息
- 24. 使用Chrome擴展內容腳本嵌入其他內容
- 25. Chrome擴展代碼和內容腳本vs注入腳本
- 26. 在Chrome擴展中,內容腳本不會影響iframe內部?
- 27. 如何調試附加main.js,而不僅僅是Firefox擴展的內容腳本?
- 28. 與Chrome擴展中的內容腳本中的頁面腳本進行通信
- 29. Firefox擴展 - PageMod腳本修改窗口
- 30. Firefox XUL擴展插入腳本?
在什麼頁面上放置這個? 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