Como posso desativar os pop-ups de "Tem certeza de que deseja sair desta página" no Chrome?

22

Existe uma maneira de desativar a opção Tem certeza de que deseja sair desta página? mensagem em um site? Estou usando o Chrome.


fonte

Respostas:

8

Essas mensagens são implementadas por desenvolvedores de sites, ouvindo o onunloadou onbeforeunloadeventos.

Existe um script de usuário disponível em about.com que bloqueia esses eventos.

Para instalar esse script de usuário (ou outros scripts de usuário, por esse motivo), você precisa primeiro instalar uma extensão do Chrome chamada TamperMonkey .

Tenha cuidado ao instalar scripts de usuários, pois eles são capazes de fazer coisas que você pode não querer. Instale apenas scripts de usuários de fontes confiáveis.

Vidar Ramdal
fonte
não é mais útil ..
pjpj 03/08
esta solução não funcionam
Argus
3
$(window).off('beforeunload.windowReload');

Isso é trabalhado para mim.

Ashwini KR
fonte
4
Um pouco mais detalhes sobre a solução proposta ajudaria
Dave M
1

Usando jQuery

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

Nos documentos do jQuery

Chamar .off () sem argumentos remove todos os manipuladores anexados aos elementos. Manipuladores de eventos específicos podem ser removidos em elementos, fornecendo combinações de nomes de eventos, espaços para nome, seletores ou nomes de funções de manipulador.

Portanto, em suma, nos $(window)fornece uma referência ao objeto de janela que está envolvido em um objeto jQuery. Esse wrapper nos dá acesso às APIs do jQuery que estão disponíveis no objeto (como .off). Chamar .off()e fornecer a sequência beforeunloadremoverá todos os ouvintes de eventos que estavam ouvindo anteriormente beforeunload.

Nota: brinquei com as abordagens de baunilha JS que encontrei depois de uma pesquisa rápida no Google. No entanto, não consegui fazer com que essas abordagens funcionassem no tempo previsto para resolver esse problema. Se alguém tiver um método que não seja o jQuery que ainda seja compatível com vários navegadores, comente ou poste uma resposta adicional. :)

wickdninja
fonte
Não obtive sucesso com a resposta aceita e o jQuery já estava disponível na página.
precisa saber é o seguinte
2
Essa seria uma resposta melhor se você explicasse como usá-lo e, idealmente, algo sobre como ele funciona.
Scott Scott
0

Para que o comando do @wickdninja funcione, instale primeiro as Ferramentas do desenvolvedor do Chrome. Então você pode abrir isso e você verá uma guia para 'Console'. Clique na guia console. Em seguida, para ativar o jQuery, digite estes comandos:

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

Então digite:

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

Depois disso, sou capaz de abrir / fechar meu Gmail sem receber o 'Sair?' pronto. https://developers.google.com/web/tools/chrome-devtools/console/javascript

espero que isto ajude.

Lee Hounshell
fonte
-4

Você pode desativar o Javascript site a site. Vá para Configurações -> Mostrar configurações avançadas -> Privacidade -> Configurações de conteúdo -> Javascript -> Gerenciar exceções.

Alexis Huxley
fonte
4
Sim, mas isso desabilitará mais do que apenas a mensagem.
BenjiWiebe
Pelo menos no FIrefox, não permitir que o Facebook execute javascript nem realiza o que o OP pretende, pois a página simplesmente continua recarregando o script sem executá-lo.
brokk e eitri