Wie kann ich die Popups "Sind Sie sicher, dass Sie diese Seite verlassen möchten" in Chrome deaktivieren?

22

Gibt es eine Möglichkeit, die zu deaktivieren ? Möchten Sie diese Seite wirklich verlassen? Nachricht auf einer Website? Ich benutze Chrome.


quelle

Antworten:

8

Diese Nachrichten werden von Website-Entwicklern durch Abhören der Ereignisse onunloadoder implementiert onbeforeunload.

Auf about.com ist ein UserScript verfügbar , das diese Ereignisse blockiert.

Um dieses Userscript (oder andere Userscripts) zu installieren, müssen Sie zuerst eine Chrome- Erweiterung namens TamperMonkey installieren .

Seien Sie vorsichtig bei der Installation von Benutzer-Skripten, da diese in der Lage sind, Dinge zu tun, die Sie möglicherweise nicht möchten. Installieren Sie nur Benutzerskripte aus vertrauenswürdigen Quellen.

Vidar Ramdal
quelle
es ist nicht mehr nützlich ..
pjpj
Diese Lösung funktioniert nicht
Argus
3
$(window).off('beforeunload.windowReload');

Das ist für mich gearbeitet.

Ashwini KR
quelle
4
Ein bisschen mehr Details zu Ihrer vorgeschlagenen Lösung würden helfen
Dave M
1

JQuery verwenden

$(window).off('beforeunload'); // tested in IE 11 and Chrome 62

Aus den jQuery-Dokumenten

Wenn Sie .off () ohne Argumente aufrufen, werden alle mit den Elementen verbundenen Handler entfernt. Bestimmte Ereignishandler können auf Elementen entfernt werden, indem Kombinationen von Ereignisnamen, Namespaces, Selektoren oder Handlerfunktionsnamen angegeben werden.

Zusammenfassend $(window)gibt uns das einen Verweis auf das Fensterobjekt, das in ein jQuery-Objekt eingeschlossen ist. Dieser Wrapper gibt uns Zugriff auf jQuery-APIs, die für das Objekt verfügbar sind (z. B. .off). Durch Aufrufen .off()und Bereitstellen der Zeichenfolge beforeunloadwerden alle Ereignis-Listener entfernt, die zuvor auf das beforeunloadEreignis gewartet haben.

Hinweis: Ich habe mit den Vanille-JS-Ansätzen gespielt, die ich nach einer kurzen Recherche bei Google gefunden habe. Ich war jedoch nicht in der Lage, diese Ansätze in der vorgesehenen Zeit, in der ich dieses Problem lösen musste, zum Funktionieren zu bringen. Wenn jemand eine Nicht-jQuery-Methode hat, die immer noch browserkompatibel ist, kommentieren Sie bitte oder senden Sie eine zusätzliche Antwort. :)

wickdninja
quelle
Ich konnte die akzeptierte Antwort nicht verwenden und jQuery war bereits auf der Seite verfügbar.
Wickdninja
2
Dies wäre eine bessere Antwort, wenn Sie erklären würden, wie man es benutzt, und im Idealfall etwas darüber, wie es funktioniert.
Scott
0

Um den Befehl von @wickdninja zum Laufen zu bringen, installieren Sie zunächst die Chrome Developer Tools. Dann können Sie das öffnen und Sie werden eine Registerkarte für "Konsole" sehen. Klicken Sie auf die Registerkarte Konsole. Geben Sie zum Aktivieren von jQuery die folgenden Befehle ein:

var jqry = document.createElement('script');
jqry.src = "https://code.jquery.com/jquery-3.3.1.min.js";
document.getElementsByTagName('head')[0].appendChild(jqry);
jQuery.noConflict();

Dann tippe:

$(window).off('beforeunload');

Danach kann ich mein Google Mail-Konto öffnen / schließen, ohne die Meldung "Leave?" zu erhalten. Prompt. https://developers.google.com/web/tools/chrome-devtools/console/javascript

hoffe das hilft.

Lee Hounshell
quelle
-4

Sie können Javascript Site für Site deaktivieren. Gehen Sie zu Einstellungen -> Erweiterte Einstellungen anzeigen -> Datenschutz -> Inhaltseinstellungen -> Javascript -> Ausnahmen verwalten.

Alexis Huxley
quelle
4
Ja, aber das wird mehr als nur die Nachricht deaktivieren.
BenjiWiebe
Zumindest in FIrefox führt das Deaktivieren von Javascript durch Facebook noch nicht einmal zu dem, was das OP beabsichtigt, da die Seite das Skript immer wieder neu lädt, ohne es auszuführen.
Brokkr