Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

325
Vistas
¿Los eventos de ventana onunload/onbeforeunload no funcionan?

He usado el evento en otros proyectos/juegos, pero parece que no funciona en este. El evento onload está funcionando bien aunque.

El script está vinculado en la parte inferior del html antes de la etiqueta </body>

el código en client.js

 (() => { // Player Closes window window.addEventListener("beforeunload", function (e) { sock.emit('player-leave', player); alert('window.addEventListener'); }); window.onbeforeunload = function(event) { sock.emit('player-leave', player); alert('window.onbeforeunload'); }; window.onunload = function(event) { sock.emit('player-leave', player); alert('window.onunload'); }; })();

El evento no pasa y no se muestra ninguna alerta.

Enlace al repositorio de git para el código completo: https://github.com/Tw1ster95/drawitgame

EDITAR: Supongo que encontré una manera de usar la identificación del socket para la desconexión del reproductor, pero todavía me pregunto por qué no se emite antes de descargar.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

No es el problema de onbeforeonload . Las razones por las que la alert no funciona es porque el navegador moderno ignorará la alert() cuando se hace beforeunload .

La especificación HTML establece que las llamadas a los métodos window.alert(), window.confirm() y window.prompt() pueden ignorarse durante el evento beforeunload. Consulte la especificación HTML para obtener más detalles.

Compruébalo aquí

Si ejecuta su página web y sigue presionando una tecla de recarga, es posible que pueda ver el mensaje de error Blocked alert() when beforeunload en la consola.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda