试图将jquery加载到tampermonkey脚本中

时间:2014-07-15 08:58:05

标签: javascript jquery tampermonkey

我正在编写一个脚本,在加载登录页面时会登录我的大学网络。

代码如下

// ==UserScript==
// @name       My Fancy New Userscript
// @namespace  http://use.i.E.your.homepage/
// @version    0.1
// @description  enter something useful
// @match      <College login page>
// @copyright  2012+, You
// ==/UserScript==    
$(document).ready(function() {

    var usr=document.getElementsByName("username");

    var pass = document.getElementByName("password");

    usr.value="usrname";    
    pass.value="password";    

    var submitButton = document.querySelector ('input[type="submit"][value="Login"]');

    var clickEvent  = document.createEvent ('MouseEvents');

    clickEvent.initEvent ('click', true, true);

    submitButton.dispatchEvent (clickEvent);

    });

控制台显示错误

$ is not defined

有人可以告诉我这里发生了什么吗?

2 个答案:

答案 0 :(得分:257)

您需要在用户脚本标头中加载@require才能加载jQuery。类似的东西:

// @require http://code.jquery.com/jquery-3.3.1.min.js

(从list of available versions of jQuery中选择所需的版本)

答案 1 :(得分:3)

对于未来的谷歌员工,

如果您使用了上述方法,但脚本似乎仍未加载 jQuery,请尝试查看空格,并尝试将缩进与标题的其余部分进行匹配。显然缩进很重要。

错误:

select 
        case, group, department, riskscore 
        from sometable 
        where (group in ('A', 'B') and group in ('one') and riskscore>5.5)
or (group in ('A', 'B') and group in ('two') and riskscore>8.0)

正确:

// ==UserScript==
// @name         New Userscript
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        https://stackoverflow.com/*
// @require http://code.jquery.com/jquery-3.4.1.min.js 
// @grant        none
// ==/UserScript==