Versuch, jquery in das Tampermonkey-Skript zu laden


132

Ich schreibe ein Skript, das sich beim Laden der Anmeldeseite in meinem College-Netzwerk anmeldet.

Der Code sieht wie folgt aus

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

    });

Die Konsole zeigt einen Fehler an

$ is not defined

Kann mir jemand sagen, was hier los ist?

Antworten:


303

Sie müssen einen @requireim Benutzerskript-Header haben, um jQuery zu laden. Etwas wie:

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

(Auswahl der gewünschten Version aus der Liste der verfügbaren Versionen von jQuery )


18
Bitte nicht benutzen jquery-latest. blog.jquery.com/2014/07/03/dont-use-jquery-latest-js

8
Seien Sie gewarnt, dass dies die eigene Definition der Seite von$
Owen

1
@ Owen und wie würden wir damit umgehen
Menasheh


Beachten Sie auch, dass die jQuery der Seite möglicherweise mitkommt und die @required-Version blockiert . noConflictwird auch dabei helfen.
Jinglesthula
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.