validar validacion usuario pattern nombre formularios formulario ejemplos contraseña con javascript

validacion - validar nombre javascript



¿La mejor forma de detectar cuándo un usuario abandona una página web? (6)

¿Cuál es la mejor manera de detectar si un usuario abandona una página web?

El evento onunload JavaScript no funciona todas las veces (la solicitud HTTP tarda más que el tiempo requerido para finalizar el navegador).

Crear uno probablemente será bloqueado por los navegadores actuales.


Aquí hay una solución alternativa, ya que en la mayoría de los navegadores los controles de navegación (barra de navegación, pestañas, etc.) están ubicados arriba del área de contenido de la página, puedes detectar el puntero del mouse dejando la página arriba y mostrar un " antes de irte " diálogo. Es completamente discreto y te permite interactuar con el usuario antes de que realmente realice la acción para irse.

$(document).bind("mouseleave", function(e) { if (e.pageY - $(window).scrollTop() <= 1) { $(''#BeforeYouLeaveDiv'').show(); } });

La desventaja es que, por supuesto, es una suposición de que el usuario realmente tiene la intención de irse, pero en la gran mayoría de los casos es correcto.


Mozilla Developer Network tiene una buena descripción y un ejemplo de onbeforeunload .


Para esto estoy usando:

window.onbeforeunload = function (e) { }

Se dispara justo antes de que la página se descargue.


Pruebe el evento onbeforeunload : se onbeforeunload justo antes de que se descargue la página. También le permite volver a preguntar si el usuario realmente quiere irse. Vea la demostración antes de descargar Demo .

Alternativamente, puedes enviar una solicitud Ajax cuando él se vaya.


Sé que esta pregunta ha sido respondida, pero en caso de que solo desee que se active algo cuando se cierra el BROWSER real, y no solo cuando se produce una carga de página, puede usar este código:

window.onbeforeunload = function (e) { if ((window.event.clientY < 0)) { //window.localStorage.clear(); //alert("Y coords: " + window.event.clientY) } };

En mi ejemplo, estoy limpiando el almacenamiento local y alertando al usuario con los mouse y coords, solo cuando el navegador está cerrado, esto será ignorado en todas las cargas de página desde dentro del programa.


Una forma (algo hacky) de hacerlo es reemplazar y los enlaces que conducen desde su sitio con una llamada AJAX al lado del servidor, lo que indica que el usuario se va, luego usa el mismo bloque de javascript para llevar al usuario al sitio externo que he pedido.

Por supuesto, esto no funcionará si el usuario simplemente cierra la ventana del navegador o escribe una nueva URL.

Para evitar eso, es posible que necesites usar Javascript setTimeout () en la página, haciendo una llamada AJAX cada pocos segundos (dependiendo de qué tan rápido quieras saber si el usuario se ha ido).