我如何在Google Chrome的Greasemonkey脚本中使用jQuery? [英] How can I use jQuery in Greasemonkey scripts in Google Chrome?

查看:128
本文介绍了我如何在Google Chrome的Greasemonkey脚本中使用jQuery?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有些人可能知道,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, or GM_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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆