我如何在Google Chrome的Greasemonkey脚本中使用jQuery? [英] How can I use jQuery in Greasemonkey scripts in Google Chrome?
问题描述
有些人可能知道,Google Chrome已经对Greasemonkey脚本进行了严格的限制。
$ b
Chromium不支持
@require
,@resource
,unsafeWindow
,GM_registerMenuCommand
,GM_setValue
或GM_getValue
。 blockquote>
如果没有要求,我找不到在Google Chrome中的Greasemonkey脚本中包含jQuery库的方法。
有人在这件事上有什么建议吗? 用户脚本提示:使用jQuery - Erik Vold的博客
// == UserScript ==
// @name jQuery对于Chrome(一个跨浏览器示例)
// @namespace jQueryForChromeExample
// @include *
// @作者Erik Vergobbi Vold& Tyler G. Hicks-Wright
// @description这个userscript是一个关于如何在谷歌浏览器的userscript中使用jQuery的例子。
// == / UserScript ==
//当jQuery完成加载时加载jQuery并调用回调函数的函数
function addJQuery(callback){
var script = document.createElement(script);
script.setAttribute(src,//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js);
script.addEventListener('load',function(){
var script = document.createElement(script);
script.textContent =window.jQ = jQuery.noConflict(true );(+ callback.toString()+)();;
document.body.appendChild(script);
},false);
document.body.appendChild(script);
}
//这个脚本的内容
函数main(){
//注意,jQ替换$以避免冲突。
alert(这里有+ jQ('a')。length +链接。
}
//载入jQuery并执行主函数
addJQuery(main);
As some of you may know, Google Chrome has put some severe limitation on Greasemonkey scripts.
Chromium does not support
@require
,@resource
,unsafeWindow
,GM_registerMenuCommand
,GM_setValue
, orGM_getValue
.Without require, I can't find a way to include the jQuery library in Greasemonkey script under Google Chrome.
Does anybody have some advice in this matter?
解决方案From "User Script Tip: Using jQuery - Erik Vold's Blog"
// ==UserScript== // @name jQuery For Chrome (A Cross Browser Example) // @namespace jQueryForChromeExample // @include * // @author Erik Vergobbi Vold & Tyler G. Hicks-Wright // @description This userscript is meant to be an example on how to use jQuery in a userscript on Google Chrome. // ==/UserScript== // a function that loads jQuery and calls a callback function when jQuery has finished loading function addJQuery(callback) { var script = document.createElement("script"); script.setAttribute("src", "//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"); script.addEventListener('load', function() { var script = document.createElement("script"); script.textContent = "window.jQ=jQuery.noConflict(true);(" + callback.toString() + ")();"; document.body.appendChild(script); }, false); document.body.appendChild(script); } // the guts of this userscript function main() { // Note, jQ replaces $ to avoid conflicts. alert("There are " + jQ('a').length + " links on this page."); } // load jQuery and execute the main function addJQuery(main);
这篇关于我如何在Google Chrome的Greasemonkey脚本中使用jQuery?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!