在Tampermonkey中使用jQuery

Mic*_*vis 15 jquery tampermonkey

我正在使用Chrome 27.0.1453.116 m并启用了"Experimental Javascript",但是我无法让jQuery在Tampermonkey上运行.

我试过了:

// ==UserScript==
// @name       My Fancy New Userscript
// @require    http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js
// ==/UserScript==

var $ = unsafeWindow.jQuery;
var jQuery = unsafeWindow.jQuery;
Run Code Online (Sandbox Code Playgroud)

但是,我在行var $ = unsafeWindow.jQuery;突出显示unsafeWindow在定义之前使用unsafeWindow时出现错误.如何解决这个问题?

tuf*_*uff 15

编辑:自Greasemonkey 2.0以来,你没有(也不能)unsafeWindow.jQuery用于获取主机页面的jQuery实例.你只需要使用window.jQuery,和// @grant none(或者@grant你需要的非jQuery东西的其他特殊API).

来源:https: //github.com/greasemonkey/greasemonkey/issues/1952
http://www.greasespot.net/2014/06/greasemonkey-20-release.html

Tampermonkey目前(2015年2月)似乎默认设置类似:http://tampermonkey.net/faq.php#Q404


旧的过时答案如下:

添加指令// @grant unsafeWindow.此外,如果您从主机窗口对象获取jQuery引用,则不需要该 @require行.