Interdir de quitter une page HTML si...

Résolu
joel_joel Messages postés 2 Date d'inscription mardi 20 février 2007 Statut Membre Dernière intervention 26 mai 2007 - 24 mai 2007 à 19:18
cs_bultez Messages postés 13616 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 - 26 mai 2007 à 09:55
Bonsoir
J'ai créé un petit jeu en javascript sur une page HTML.
Mais si le joueur presse la touche ERASE , le navigateur le dirige sur la page .visitée précédente et la partie entamée est perdue.
Je voudrais donc, que si le joueur tente de quitter  la page,  faire afficher un message de confirmation, et si le joueur répond NON, qu'il puisse continuer sa partie.
J'y suis presque arrivé : j'ai bien mon message et cela fonctionne à la première tentative, mais si j'essaie une deuxième fois, je quitte ma page sans passer par le message. Pourquoi ?
Voici le code
 
function confirmation(){
if(!(confirm("Etes-vous certain de vouloir arrêter cette partie?"))){
 document.execCommand('Stop');
 }
}

Puis dans BODY:     ......onUnload="confirmation();">

Merci d'avance

4 réponses

cs_bultez Messages postés 13616 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 31
25 mai 2007 à 11:33
Bonjour,

   
    exemple
   

<hr />


Cordialement            Bul     [mon Site]     [M'écrire]



<hr />
3
cs_bultez Messages postés 13616 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 31
26 mai 2007 à 09:55
    exemple
    <script type="text/javascript">
        var test=false;
    </script>



    peut-être ?

<hr />


Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
3
Arto_8000 Messages postés 1044 Date d'inscription lundi 7 mars 2005 Statut Membre Dernière intervention 13 juillet 2010 7
25 mai 2007 à 04:27
Habituellement pour arrêter un événement tu dois faire un return false sur ton event. Je ne sais pas si tu peux vraiment arrêter l'événement onunload, mais si c'est possible c'est davantage comme cela que ça ce ferait :

function confirmation()
{
return confirm("Êtes-vous certain de vouloir arrêter cette partie ?");
}
0
joel_joel Messages postés 2 Date d'inscription mardi 20 février 2007 Statut Membre Dernière intervention 26 mai 2007
26 mai 2007 à 08:49
Merci pour ces réponses.
Du coup j'ai envie de perfectionner mon script:
Comment modifier 
 
    exemple
   
pour que le message n'apparaisse que si une certaine variable TEST  prend la valeur false?
0