Entfernen Sie eine javascript-Funktion mit Greasemonkey
Besuche ich eine website mit einem javascript-Datei im Kopf des HTML -
<script language="javascript" src="javscript.js"></script>
Den code in diese Datei:
//keypress management
if (document.layers) document.captureEvents(Event.KEYPRESS)
function update(e) {
if (document.all) { //Explorer
if (event.keyCode==13) document.forms[0].submit(); //13 = ENTER
else if (event.keyCode==26) runHelp(hplk); //26 = CTRL+Z
return;
} else { //mozilla
if (e.which==13) document.forms[0].submit(); //13 = ENTER
else if (e.which==26) runHelp(hplk); //122 = CTRL+Z
return;
}
}
document.onkeypress=update;
Möchte ich deaktivieren/entfernen/ersetzen diese Funktion mit Greasemonkey.
Versuchte ich es mit
unsafeWindow.update = function(){}
ohne Ergebnis! (habe keine Fehler in der Konsole)
gibt es einen Weg, um zu töten diese Funktion?
- Sehen Sie, wenn Sie die Antwort auf diese Frage für Sie arbeitet. Noch nicht verwendet GreaseMonkey in eine Weile, aber es scheint Sinn zu machen.
- Ist dies auf Firefox 2, mit älteren Greasemonkey, wie Ihre vorherigen Fragen?
- ich habe versucht den code und fügte hinzu alert('TEST'); der code erstellt in den Kopf, es heißt aber nicht das Feuer "test"
- schön zu Lesen Sie.. keine seiner auf die neue FF und GM 😀
- aber die alte Frage 😀 Schande
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nicht klar ist, dass
update
ist eine Globale Funktion. Wenn es nicht dann, dass die Methode nicht funktionieren.Aber Sie können überschreiben die keypress-handler mit:
Für eine Allgemeine, Hochleistungs-Weg selektiv zu blockieren oder zu ersetzen, alle JS (in Firefox) verwenden
@run-zu-Dokument-start
und die checkForBadJavascripts Funktion, etwa so:Finden Sie hier, weitere Informationen auf
checkForBadJavascripts
.checkForBadJavascripts
in diesem Fall. Wenn Sie getan haben, und ohne eine internet-Verbindung, Sie würde nur kopieren und fügen Sie den gesamten utility-code in Ihrem Skript. Es ist ziemlich kurz.