我最近在Greasemonkey的一個腳本中工作過,並且希望將它作爲Firefox的附加組件發佈。什麼是最簡單的方法來做到這一點?如何將Firefox附加組件發佈爲Greasemonkey腳本?
6
A
回答
4
在
userscripts.org
OpenUserJS.org(或其他userscripts.org替代品之一)剛剛發表您的腳本。
試圖重新包裝它作爲附加組件通常比它的價值更麻煩。
如果你真的必須,您可以使用the Greasemonkey script compiler把你的腳本轉換成「附件」,然後submit that add-on to Mozilla, via the normal add-on process。
請注意,弗拉基米爾的答案比Greasemonkey腳本編譯器更好。
10
雖然您可以「編譯」GreaseMonkey腳本(請參閱Brock的答案),但此解決方案並不完全得到很好的支持。更可靠的選項將使用Add-on SDK和JPM。您lib/main.js
文件可以是非常簡單的(page-mod
module documentation):
var data = require("sdk/self").data;
var pageMod = require("sdk/page-mod");
pageMod.PageMod({
include: "*.example.com",
contentScriptWhen: 'end',
contentScriptFile: data.url("contentScript.js")
});
這等同於以下的GreaseMonkey腳本頭:
// @include http://example.com/*
// @include http://*.example.com/*
然後你把你的GreaseMonkey腳本data/contentScript.js
(附加SDK會忽略GreaseMonkey標題,信息在別處指定)並構建擴展。在大多數情況下,它只會工作 - 除非你的GreaseMonkey腳本使用任何特殊的GreaseMonkey API,在這種情況下,你需要找到替代品。順便說一下(通常的警告適用)unsafeWindow
is supported。
相關問題
- 1. 在Firefox的「Ajaxify」網頁上添加附加組件或greasemonkey腳本?
- 2. 如何將Greasemonkey腳本轉換爲無重啓Firefox插件?
- 3. 將背景腳本添加到Firefox附加組件
- 4. 在addons.mozilla.org上發佈Firefox附加組件需要多少成本?
- 5. Firefox腳本:將python腳本附加到Firefox熱鍵
- 6. greasemonkey畫布腳本
- 7. Firefox Expect與Greasemonkey腳本?
- 8. 將Firefox開發者控制檯附加到附加組件
- 9. Firefox插件或greasemonkey腳本插入javascript
- 10. 如何從Greasemonkey腳本在Firefox中存儲數組?
- 11. 與Firefox附加腳本和內容腳本併發
- 12. IDE for Firefox附加組件開發
- 13. 如何驗證Firefox附加組件
- 14. Firefox SDK附加組件 - 如何開始
- 15. 如何製作Firefox附加組件
- 16. firefox:你如何卸載附加組件?
- 17. 如何從Greasemonkey腳本創建Firefox插件?
- 18. 創建Firefox附加組件
- 19. Youtube Firefox附加組件
- 20. .Net Firefox附加組件?
- 21. 開發自己的Firefox附加組件和其他附加組件
- 22. 在發佈的附加組件
- 23. 私密發佈附加組件
- 24. Firefox附加組件:如何將剪貼板粘貼到textarea?
- 25. 從Firefox附加內容腳本加載附加的JavaScript代碼
- 26. 將JavaScript轉換爲Greasemonkey腳本
- 27. 如何在XUL中爲Firefox附加組件激活面板
- 28. Firefox附加組件將XML轉換爲XHTML
- 29. 如何使用vim腳本將文本附加到文件?
- 30. Firefox附加SDK附加內容腳本一旦
你的意思是「沒有得到很好支持」?在「不/很少安裝」或「膨脹代碼」的意義上? – 2012-07-31 09:30:52
@RobW:我的意思是:「古老的解決方案,有人在幾年前一起入侵,並沒有真正更新,因爲」。這在很多方面都不是最理想的,例如需要重新啓動瀏覽器來進行擴展安裝,但沒有人會解決這個問題。 – 2012-07-31 09:57:57
我試圖編輯這個,但他們不接受它。但是,這個確切的腳本不再工作。我不得不根據Mozilla文檔對其進行修改。 'var pageMod = require(「sdk/page-mod」); var self = require(「sdk/self」); pageMod.PageMod({ 包括: 「*」, contentScriptWhen: '準備好', contentScriptFile:[self.data.url( 「contentScript.js」)] });' – trlkly 2016-03-03 18:05:51