6
respostas

Exibir uma mensagem antes de fechar a página

Boa tarde, Estou tentando exibir um lembre para o usuário antes dele fechar o sistema. Trabalho com Chrome, e estou usando o método beforeunload, porém a mensagem que eu quero não é exibido.

Surge apenas o popup padrão do navegador: "Sair do site?" "É possível que as alterações feitas não sejam salvas."

Abaixo o código que estou utilizando dentro do arquivo js: $(window).on('beforeunload', function () { RetornaMensagem(); var x = RetornaMensagem(); return x; });

function RetornaMensagem() { return 'teste'; }

Fiz pesquisa na internet mas a maioria recomenda utilizar o "beforeunload". O que estou fazendo de errado?

6 respostas

Fala aí André, tudo bem? Para fazer isso não precisa de jQuery, pode fazer com o addEventListener

window.addEventListener('beforeunload', () => {
    console.log('Fechando...')
})

Espero ter ajudado.

Boa noite, André! Como vai?

Eu não entendi muito bem o que vc deseja. Vc quer que ao tentar fechar a aba do navegador onde o seu site está aperto um alerta seja exibido? É isso?

Qual o comportamento que seu sistema tem com o código que vc desenvolveu até agora? Há alguma mensagem de erro no console do navegador?

Com essas informações nós poderemos te ajudar de uma forma mais efetiva!

Grande abraço e bons estudos, meu aluno!

Obrigado pelas respostas Matheus e Gabriel, Esclarecendo....

Vc quer que ao tentar fechar a aba do navegador onde o seu site está aperto um alerta seja exibido? É isso? Resposta: sim, quero mostrar somente uma mensagem antes de fechar o Chrome.

Qual o comportamento que seu sistema tem com o código que vc desenvolveu até agora? Há alguma mensagem de erro no console do navegador? Resposta: Não há erro no sistema.

No código que mencionei acima, não mostra a mensagem "teste". Mas aparece um popup com a mensagem: "Sair do site? " "É possível que as alterações feitas não sejam salvas."

Ah! Perfeito, André! Agora entendi a situação!

Seguinte, dá uma olhada na resposta que eu dei nesse outro tópico bem parecido com o seu!

Acho que a resposta que eu dei lá também serve para o seu caso!

Qualquer coisa é só falar que a gente continua trocando uma ideia!

Grande abraço e bons estudos, meu aluno!

Oi André tudo bem?

Você pode fazer com que quando o mouse sair da página ele dispare um alert.

Dá uma olhada

<!DOCTYPE html>
<html>
<body onmouseout="alert('tem certeza que quer sair?')">


Página normal

</body>
</html>

Também pode monitorar a tecla alt+tab e alt+f4 se quiser.

Alguma novidade André? Deu certo? Alguma resposta fez sentido para você?

Lembrando que o código que eu te passei faz exatamente o que você quer.

Fico no aguardo, bons estudos.