Jak mogę wyłączyć wyskakujące okienka „Czy na pewno chcesz opuścić tę stronę” w przeglądarce Chrome?

22

Czy istnieje sposób na wyłączenie Czy na pewno chcesz opuścić tę stronę? wiadomość na stronie internetowej? Używam Chrome.


źródło

Odpowiedzi:

8

Wiadomości te są wdrażane przez twórców stron internetowych poprzez słuchanie wydarzeń onunloadlub onbeforeunload.

W witrynie about.com dostępny jest skrypt użytkownika, który blokuje te zdarzenia.

Aby zainstalować ten skrypt użytkownika (lub inne skrypty użytkownika, w tym celu), musisz najpierw zainstalować rozszerzenie Chrome o nazwie TamperMonkey .

Zachowaj ostrożność podczas instalowania skryptów użytkowników, ponieważ są one w stanie robić rzeczy, których możesz nie chcieć. Instaluj skrypty użytkowników tylko z zaufanych źródeł.

Vidar Ramdal
źródło
nie jest już przydatny ..
pjpj
to rozwiązanie nie działa
Argus
3
$(window).off('beforeunload.windowReload');

To działa dla mnie.

Ashwini KR
źródło
4
Przydałoby się trochę więcej szczegółów na temat proponowanego rozwiązania
Dave M
1

Korzystanie z jQuery

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

Z dokumentów jQuery

Wywołanie funkcji .off () bez argumentów usuwa wszystkie procedury obsługi dołączone do elementów. Określone procedury obsługi zdarzeń można usunąć z elementów, zapewniając kombinacje nazw zdarzeń, przestrzeni nazw, selektorów lub nazw funkcji obsługi.

Podsumowując, $(window)daje nam odniesienie do obiektu okna zawiniętego w obiekt jQuery. To opakowanie zapewnia nam dostęp do interfejsów API jQuery, które są dostępne w obiekcie (np. .off). Wywołanie .off()i podanie ciągu beforeunloadusunie wszystkie detektory zdarzeń, które wcześniej nasłuchiwały na beforeunloadzdarzenie.

Uwaga: bawiłem się waniliowymi metodami JS, które znalazłem po szybkich badaniach Google. Jednak nie byłem w stanie uzyskać takich podejść do pracy w wyznaczonym czasie, musiałem rozwiązać ten problem. Jeśli ktoś ma metodę inną niż jQuery, która jest nadal kompatybilna z różnymi przeglądarkami, prosimy o komentarz lub opublikowanie dodatkowej odpowiedzi. :)

wickdninja
źródło
Nie udało mi się użyć zaakceptowanej odpowiedzi, a jQuery był już dostępny na stronie.
wickdninja
2
To byłaby lepsza odpowiedź, gdybyś wyjaśnił, jak z niego korzystać, a najlepiej coś o tym, jak to działa.
Scott
0

więc aby uzyskać polecenie z @wickdninja, najpierw zainstaluj Chrome Developer Tools. Następnie możesz to otworzyć, a zobaczysz zakładkę „Konsola”. Kliknij kartę Konsola. Następnie, aby włączyć jQuery, wpisz następujące polecenia:

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();

Następnie wpisz:

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

po tym jestem w stanie otworzyć / zamknąć Gmaila bez uzyskania „Wyjdź?” skłonić. https://developers.google.com/web/tools/chrome-devtools/console/javascript

mam nadzieję że to pomoże.

Lee Hounshell
źródło
-4

Możesz wyłączyć Javascript w poszczególnych witrynach. Przejdź do Ustawienia -> Pokaż ustawienia zaawansowane -> Prywatność -> Ustawienia treści -> JavaScript -> Zarządzaj wyjątkami.

Alexis Huxley
źródło
4
Tak, ale spowoduje to wyłączenie więcej niż samej wiadomości.
BenjiWiebe
Przynajmniej we FIrefoxie, zabronienie facebookowi uruchamiania javascript nie osiąga nawet tego, co zamierza OP, ponieważ strona po prostu przeładowuje skrypt, nie wykonując go.
brokkr