是否可以創建一個可以管理其他用戶腳本的Greasemonkey腳本?
我想編寫一個userscript,它會自動安裝一組其他用戶腳本,給出userscript URL列表。使用Greasemonkey腳本來安裝其他用戶腳本
回答
不,這是不可能的。如果是的話,這將是一個重大的安全漏洞。
您可以做的最好的是觸發每個腳本的安裝對話框,並讓用戶決定是否要安裝該腳本。
如果您找到了解決這些限制的方法,請告訴我們,以便我們可以關閉它,趕快行動。 ;-)
要觸發下載對話框:
獲取直接下載網址。
例如,對於this script:
(Click for larger image)的下載網址是:
http://userscripts.org/scripts/source/26062.user.js
。然後,您的腳本將通過將該URL與一起發送,從而觸發Greasemonkey安裝對話框。
這裏是一個完整的Greasemonkey腳本這表明:
// ==UserScript== // @name _Auto popup Greasemonkey Script Install Dialog // @include http://YOUR_SERVER.COM/YOUR_PATH/* // @include http://stackoverflow.com/faq // @require http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js // @grant GM_addStyle // ==/UserScript== var scriptJS_URL = "http://userscripts.org/scripts/source/26062.user.js"; $("body").append ( '<iframe src="' + scriptJS_URL + '" class="gmImstallIframe"></iframe>' ); GM_addStyle (" \ iframe.gmImstallIframe { \ width: 1px; \ height: 1px; \ border: none; \ } \ ");
重要:有目前似乎是Greasemonkey的(大約1.5版)中的錯誤。 安裝按鈕可以工作,但顯示腳本源按鈕似乎是針對跨域腳本進行處理的。
具體來說,如何觸發特定腳本的安裝對話框?如果可能的話,這將是一個合理的解決方案。 –
查看已更新的答案。 –
谷歌瀏覽器不再允許從外部網站安裝用戶腳本,但可能有解決此限制的方法:http://support.google.com/chrome_webstore/bin/answer.py?hl = en&answer = 2664769&p = crx_warning我會盡量找到一種方法讓這個腳本在Google Chrome和Firefox中正常工作。 –
在Firefox中你可以調用的URL userscripts在一個隱藏幀流利創建安裝彈出窗口。這是最接近你可以得到的。
無論如何,Chrome用戶無法正常工作,而您的真正原因是繞過該安裝對話框 - 當然是不可能的。
如何在Firefox中以隱藏框架調用URL? –
只需追加'
- 1. Greasemonkey腳本,從其他頁面腳本調用函數
- 2. 用戶腳本安裝
- 3. 我的Greasemonkey腳本不會安裝
- 4. Greasemonkey腳本阻止網站的其他腳本
- 5. 可以@required腳本與Greasemonkey中的其他腳本衝突嗎?
- 6. 使用的Greasemonkey腳本
- 7. Python腳本調用其他Python腳本
- 8. 調用主腳本來調用其他腳本的cron作業
- 9. 跨瀏覽器的方式來加載jQuery和其他依賴到用戶腳本/ greasemonkey腳本
- 10. 來源其他腳本
- 11. 在Greasemonkey中啓動用戶腳本
- 12. Greasemonkey onmousemove腳本
- 13. 的Greasemonkey腳本
- 14. 引用來自SQL腳本的其他SQL腳本?
- 15. GM_log記和其他通用功能在Greasemonkey腳本
- 16. Greasemonkey無法識別並且無法安裝本地腳本
- 17. window.onload適用於Firefox + Greasemonkey腳本,但不適用於Chrome用戶腳本?
- 18. gmail的greasemonkey腳本
- 19. Greasemonkey腳本注入
- 20. greasemonkey畫布腳本
- 21. GreaseMonkey登錄腳本
- 22. 保護Greasemonkey腳本?
- 23. 如何使用其他腳本啓動和停止腳本?
- 24. 不能使用其他腳本的腳本
- 25. 如何在其他腳本的腳本中使用參數
- 26. 在Greasemonkey腳本中使用jQuery插件
- 27. 使用Greasemonkey腳本刪除MooTools事件?
- 28. 我應該如何使用批處理腳本來創建其他腳本?
- 29. 用於編寫調用其他幾個腳本的包裝腳本的模式?
- 30. 的腳本Exec的其他腳本
如果用戶腳本可以切換已安裝的腳本(對於特定網站),這也會很有用。 –
這個問題給了我幾個非常有用的答案。爲什麼它低調? –