Muchas páginas tienen alertas cuando las abandonas: si cierras pestañas, navegas sin guardar, etc., existen numerosas razones por las que un sitio te alertaría / bloquearía tu salida hasta que confirmes una alerta, por ejemplo, "¿Estás seguro de que quieres navegar fuera de esta página? ".
Esto normalmente se hace con los controladores onbeforeunload
y / o onunload
controladores.
Aquí hay un ejemplo.
¿Hay alguna manera de evitar alertas / eventos de bloqueo de usuarios generados por esos controladores? Básicamente, me gustaría dejar JS habilitado, y específicamente no permitir cosas que me impidan salir de una página sin que ocurra un clic adicional.
onbeforeunload
y los onunload
manipuladores aún deben disparar; simplemente no se les debe permitir hacer cosas que bloqueen al usuario. Eso significa que no hay alertas ni operaciones que demoren más de unos segundos.
He encontrado algunos complementos que editan / greasemonkey parchean el javascript para páginas particulares, y jugué un poco con su código para intentar hacerlos más universalmente aplicables. Sin embargo, espero encontrar una solución que funcione en cualquier página que intente bloquear la salida del usuario.
onbeforeunload
) solo funcionará para páginas que usan onbeforeunload
, no para páginas que usan uno de los otros métodos para adjuntar eventos.