2009-07-31 14 views
1

J'ai une application de chat, je veux que lorsque l'utilisateur ferme accidentellement le navigateur, je veux lui donner une alerte de boîte de jquery avant la fermeture de la fenêtre et faire les opérations de nettoyage nécessaires. helpjquery boîte de dialogue d'alerte avant le déchargement ou lorsque la fenêtre du navigateur est fermée

+0

double possible de [Comment empêcher l'utilisateur de changer avec jQuery] (http://stackoverflow.com/questions/1102618/how-to-prevent-the-user-to-change-page-with-jquery) –

Répondre

2

peut-être que vous devrez utiliser window.onbeforeunload événement pour obtenir ceci.

un coup d'oeil sur ce page

exemple l'utilisation de cette page liée à une forme

function setConfirmUnload(on) { 

    window.onbeforeunload = (on) ? unloadMessage : null; 

} 

function unloadMessage() { 

    return 'You have entered new data on this page. If you navigate away from this page without first saving your data, the changes will be lost.'; 

} 


$(document).ready(function() { 

    $(':input',document.myForm).bind("change", function() { setConfirmUnload(true); }); // Prevent accidental navigation away 
}); 
+0

Est-ce seulement l'IE? –

2

View the discussion here

Fondamentalement, vous vous retrouvez à l'aide du code comme ceci:

jQuery(window).unload(function(e) { 
    var chg = jQuery(".crayon-changed"); 
    if (chg.length && uniConfirm(configCrayons.txt.sauvegarder)) { 
    chg.next().find('form').submit(); 
    } 
}); 

Here is a link vers le javascri Code pt ici (comme le montre le fil i lien ci-dessus)

5

Ouais, ce script suivant l'utilisation namespace jQuery ...

jQuery(window).bind('beforeunload', function(event) { 
    event.stopPropagation(); 
    event.returnValue = "Attention !\nVous n'avez pas sauver vos paramètres.\nSi vous appuyer sur OK, vous perdrez les informations en cours d'utilisation...\n\nLa fenêtre est sur le point de se fermer"; 
    return event.returnValue; 
}); 
Questions connexes