Cómo saber la respuesta del usuario en window.onbeforeunload

He escrito una función que advierte a un usuario antes de actualizar (lo necesito por alguna razón). Lo que también quiero implementar es llamar a otra función si el usuario hace clic en Leave this page. Si el usuario hace clic en stay on this page no tengo que hacer nada

function warnuser()
{
    return "Don't refresh the page.";
}

window.onbeforeunload = warnuser;
//if returns true call another function!

Gracias por su atención.

preguntado el 01 de julio de 12 a las 23:07

Este es un tema interesante. Comprueba si esto es de ayuda. stackoverflow.com/questions/2103881/… -

2 Respuestas

Si el usuario decide salir de la página, no puede llamar a funciones ni nada más, su control finaliza...

Respondido 02 Jul 12, 00:07

function callbackExit(){
    setTimeout(function(){
        //User warned yet he stay on the page.
        //Do your code here now.
    }, 1000);
}   
function warnuser()
{
    callbackExit();
    return "Don't refresh the page.";
}

window.onbeforeunload = warnuser;

Puede realizar un seguimiento de los clics en "Permanecer en la página" de esta manera, pero aún así no puede realizar nada si el usuario hace clic en el botón "Salir del sitio".

Respondido 18 Jul 13, 15:07

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.