Wie kann ich Javascript Popups / Warnungen in Chrome deaktivieren?

20

Tut mir leid, wenn es gefragt wurde. Ich habe bereits mehrere Lösungen gefunden, die nicht funktionieren. Ich bin mir nicht sicher, was ich falsch mache.

Ich möchte nicht alle Javascript deaktivieren, nur Javascript-Warnfelder. Diejenigen, die auftauchen und Sie zwingen, auf OK oder X zu klicken, um sie zu schließen.

Ich habe Benutzerskripte gefunden, die behaupten, dies zu tun (Beispiel: http://userscripts.org/scripts/show/58252 ). Ich habe Chrome auf den Dev-Channel gesetzt, Chrome mit dem Schalter --enable-user-scripts gestartet, das Skript wird als installiert angezeigt.

Aber ich bekomme immer noch die Alarmboxen.

Ein Beispiel für ein Warnfeld, das nicht deaktiviert wird, finden Sie unter http://wordswithfriends.net/. Geben Sie ein beliebiges Abfallwort in den Wortprüfer in der rechten Seitenleiste ein. Sie erhalten ein Popup, in dem Ihnen mitgeteilt wird, dass es sich nicht um ein Wort handelt.

CreeDorofl
quelle

Antworten:

17

Die einzige Möglichkeit, die Warnmeldungsfelder zu deaktivieren, besteht darin, entweder eine Erweiterung oder ein Benutzerskript zu installieren. Das von Ihnen verlinkte Userscript ist für Firefox Greasemonkey und funktioniert nicht in Chrome.

Darüber hinaus ist die angeführte Seite , die sich schlecht verhält, hinterhältig und führt diesen "Wortprüfer" in einem iframemit Code aus, der das alert()sofortige Neuladen des Iframes auslöst.

Aber hier ist ein Userscript, das es besiegt:

// ==UserScript==
// @name        Wordswithfriends, Block javascript alerts
// @match       http://wordswithfriends.net/*
// @run-at      document-start
// ==/UserScript==

addJS_Node (null, null, overrideSelectNativeJS_Functions);

function overrideSelectNativeJS_Functions () {
    window.alert = function alert (message) {
        console.log (message);
    }
}

function addJS_Node (text, s_URL, funcToRun) {
    var D                                   = document;
    var scriptNode                          = D.createElement ('script');
    scriptNode.type                         = "text/javascript";
    if (text)       scriptNode.textContent  = text;
    if (s_URL)      scriptNode.src          = s_URL;
    if (funcToRun)  scriptNode.textContent  = '(' + funcToRun.toString() + ')()';

    var targ = D.getElementsByTagName ('head')[0] || D.body || D.documentElement;
    targ.appendChild (scriptNode);
}

Wenn Sie ALL alerts()auf ALLEN Seiten wirklich deaktivieren möchten (nicht empfohlen), löschen Sie die // @matchZeile.

Brock Adams
quelle
7
Ich akzeptierte diese Antwort so heftig, dass meine Maus explodierte. Klappt wunderbar. Vielen Dank ^^
CreeDorofl
Bitte! Froh, dass ich Helfen kann.
Brock Adams
Warum wird nicht empfohlen, alle Warnungen zu deaktivieren? Ich bin nie auf nützliche Warnungen gestoßen, außer "Möchten Sie diesen Tab wirklich verlassen?" Auf nicht gespeicherten Fortschrittsseiten.
Coretek
Funktioniert nicht, wenn die Seite beim Laden Warnungen anzeigt.
Riv
@riv, öffne eine neue Frage, wenn du einen Fall hast, in dem es nicht funktioniert. Stellen Sie sicher, dass Sie ein vollständiges Rezept zum Duplizieren des Problems bereitstellen.
Brock Adams
2

Dafür gibt es im Chrome Web Store mindestens eine Erweiterung . Funktioniert für mich, auch wenn es ein bisschen verdächtig klingt, dass es eine optionale Unterstützung durch den Anzeigenmodus gibt, die Sie auf der Einstellungsseite deaktivieren können. (Ich habe die Einstellung nicht gefunden, aber festgestellt, dass das Null-Routing nicht schaden kann .)api.s13.us

ecmanaut
quelle
0

Wenn Sie nach einem Tool dafür suchen und sich nicht mit Benutzerskripten herumschlagen möchten, gibt es ein nettes Tool, das mit jedem lästigen Popup auf einem Windows-System umgehen kann - ClickOff . Sie können es hier herunterladen . Ich habe überprüft, dass es mit der Warnung "Änderungen, die Sie vorgenommen haben, werden möglicherweise nicht gespeichert" für SharePoint-Websites funktioniert.

Serhiy
quelle
Das klingt interessant, da lästige Fehler-Popups generell zu entfernen wären. Lässt es Sie genau festlegen, welche Art von Dialogen Sie automatisch OK / Abbrechen möchten, oder wählt es sie irgendwie selbst aus?
CreeDorofl
Ja, Sie können angeben, welche Dialogfelder geschlossen werden sollen und auf welche Schaltfläche geklickt werden soll.
Serhiy