Intentando cargar jquery en el script tampermonkey

132

Estoy escribiendo un script que inicia sesión en mi red universitaria cuando se carga la página de inicio de sesión.

El código tiene el siguiente aspecto

// ==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);

    });

La consola muestra un error que dice

$ is not defined

¿Alguien puede decirme qué está pasando aquí?

Jonás
fuente

Respuestas:

303

Debe tener un @requireencabezado de script de usuario para cargar jQuery. Algo como:

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

(Seleccionando la versión deseada de la lista de versiones disponibles de jQuery )

Aardvark99
fuente
18
Por favor no lo use jquery-latest. blog.jquery.com/2014/07/03/dont-use-jquery-latest-js
8
Tenga en cuenta que esto puede interferir con la definición propia de la página de$
Owen
1
@Owen y cómo lidiaríamos con eso
Menasheh
@Menasheh jQuery.noConflict () .
Dan Atkinson
También tenga en cuenta que puede aparecer la propia página jQuery y bloquear la @requireversión d. noConflictTambién ayudará con eso.
jinglesthula