Gibt es eine Möglichkeit, die zu deaktivieren ? Möchten Sie diese Seite wirklich verlassen? Nachricht auf einer Website? Ich benutze Chrome.
Gibt es eine Möglichkeit, die zu deaktivieren ? Möchten Sie diese Seite wirklich verlassen? Nachricht auf einer Website? Ich benutze Chrome.
Antworten:
Diese Nachrichten werden von Website-Entwicklern durch Abhören der Ereignisse onunload
oder 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.
$(window).off('beforeunload.windowReload');
Das ist für mich gearbeitet.
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 beforeunload
werden alle Ereignis-Listener entfernt, die zuvor auf das beforeunload
Ereignis 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. :)
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.
Sie können Javascript Site für Site deaktivieren. Gehen Sie zu Einstellungen -> Erweiterte Einstellungen anzeigen -> Datenschutz -> Inhaltseinstellungen -> Javascript -> Ausnahmen verwalten.