Javascript message confirm fermeture page

Fermé
marhra Messages postés 6 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 16 août 2009 - 11 nov. 2008 à 14:28
marhra Messages postés 6 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 16 août 2009 - 11 nov. 2008 à 17:36
Bonjour,

Voici mon problème : dans une page (très simple, je suis un ultra-newbies...), il me faudrait pouvoir afficher une confirmation de fermeture, lorsque l'utilisateur ferme la page par n'importe quel moyen, mis à part le bouton prévu à cet effet.
Les options seraient soit de confirmer la fermeture, soit d'annuler
Je précise, que le site en question n'est pas public, qu'il se consulte sur support CDROM ou clé USB. Ce blocage n'a pour but que de permettre à l'utilisateur qui quitte la page en cours de se retrouver dans la page précédente, qui a provoqué son ouverture par onclick="javascript:window.open()' etc, sachant qu'il y a la caractéristique history=0 et channelmode=1...

En bref : l'utilisateur en a assez de contempler la magnifique image commentée, plein écran, sans barre d'outil, il veut la quitter. S'il n'utilise pas les boutons "fermer l'image", apparaît alors une boîte de dialogue qui lui dit "Pour faciliter la navigation, il vaut mieux utiliser les boutons présents dans la page" avec les choix "fermer quand même" (la fenêtre se ferme) ou Ok, j'utilise les boutons" (l'action de fermeture est bloquée)

Je sais que la fonction onbeforeunload doit pouvoir me le permettre, mais je ne sais pas comment faire pour que la confirmation n'intervienne pas lorsque lutilisateur clique sur les boutons...

Le code de ma page :
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
<title>TITRE - Vue d'ensemble - PHOTO 11</title>
</head>
<body>
<center>
<input name="B1" style="font-weight: bold;" value="FERMER L'IMAGE" onclick="window.close()" type="button">
<font face="arial" size="5">
<table bgcolor="silver" border="1" width="90%"><td align="center"><b>PHOTO 11 : COMMENTAIRE DE LA PHOTO 11</b></td></table>
<img src="Photos/11.JPG" alt="11" border="1" width="90%">
<table bgcolor="silver" border="1" width="90%"><td align="center"><b>PHOTO 11 : COMMENTAIRE DE LA PHOTO 11</b></td></table>
<input name="B1" style="font-weight: bold;" value="FERMER L'IMAGE" onclick="window.close()" type="button">
</font>
</center>
</body>
</html>

Merci d'avance de vos réponses...
A voir également:

3 réponses

Brachior Messages postés 613 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 22 juin 2009 46
11 nov. 2008 à 16:07
tu as la fonction confirm() de js qui te permet ca ...
elle fonctionne comme alert() sauf que si la reponse est true alors le code se poursuit.

en gros :

if(confirm("Pour faciliter la navigation, il vaut mieux utiliser les boutons présents dans la page.\nfermer quand même"))
  windows.close();
1
marhra Messages postés 6 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 16 août 2009
11 nov. 2008 à 16:35
Merci Brachior de ta réponse.

Cependant...

Comment faire pour que l'action ne se déclenche pas (aucune boite de dialogue et fermeture de la page) lorsque l'utilisateur clique sur l'une des boutons "FERMER L'IMAGE" ?

Car si j'ai bien compris, la confirmation intervient au moment de la fermeture, quelque soit le moyen utilisé, ce qui n'est pas tout à fait l'effet que je souhaite... (qui aurait envie de parcourir un dossier de photos, et devoir confirmer à chaque fois qu'il appuie sur un bouton..)
0
Brachior Messages postés 613 Date d'inscription dimanche 21 octobre 2007 Statut Membre Dernière intervention 22 juin 2009 46 > marhra Messages postés 6 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 16 août 2009
11 nov. 2008 à 16:50
et bien ce if tu ne le mets pas sur tes boutons Oo
0
marhra Messages postés 6 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 16 août 2009
11 nov. 2008 à 17:01
Euh...

En fait, comme je le disais dans mon premier message, je suis un newbie (il y a un grade en dessous? parce que j'aurais plutôt celui-là)

donc : je le met où, le if ...? avec un onbeforeunload, ou ailleurs ?
0
marhra Messages postés 6 Date d'inscription samedi 17 mai 2008 Statut Membre Dernière intervention 16 août 2009
11 nov. 2008 à 17:36
Comme j'ai continué à chercher, j'ai découvert le monde merveilleux des Lightboxes...

je pense que je vais prendre le problème à l'envers et revoir la conception. Comme les pages affichant une seule image sont des culs de sac, autant paramétrer entièrement leur affichage ET la manière de les fermer...

Merci tout de même.
0