Rechercher : dans
Par :

Javascript message confirm fermeture page

Dernière réponse le 11 nov 2008 à 17:36:11 marhra, le 11 nov 2008 à 14:28:37 
 Signaler ce message aux modérateurs

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...

Configuration: Windows XP
Firefox 3.0.3

Meilleures réponses pour « javascript message confirm fermeture page » dans :
Javascript - Centrer verticalement une page web VoirPour centrer verticalement une page web, impossible de s'en sortir en css. Une solution bien pratique : JavaScript. 1. Le fichier .js 2. La page .html 3. Utilisation 4. Inconvénients 5. Rappel Merci à Dalida pour la source du...
[IE] Erreur de script / Effectuer un débogage VoirDe temps en temps, lorsque vous naviguez sur le Net et que vous chargez une page Web, un message d'erreur de script survient : Une erreur est survenue. Une erreur est survenue sur le script de cette page. Souhaitez-vous effectuer un débogage...
Javascript - Modifier la hauteur (height) d'un élément HTML VoirPour modifier la hauteur d'un élément HTML en javascript, il suffit d'utiliser sa propriété de style "height". Pour cela vous pouvez y faire référence de la manière suivante : Si vous souhaitez connaître la hauteur (height) d'un bloc HTML, il...
Javascript - les boîtes de dialogue VoirQu'est-ce qu'une boîte de dialogue? Une boîte de dialogue est une fenêtre qui s'affiche au premier plan suite à un événement, et qui permet Soit d'avertir l'utilisateur Soit le confronter à un choix Soit lui demander de compléter un champ pour...

1

Brachior, le 11 nov 2008 à 16:07:35
  • +1

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();

Répondre à Brachior

2

marhra, le 11 nov 2008 à 16:35:11

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..)

Répondre à marhra

3

Brachior, le 11 nov 2008 à 16:50:05

Et bien ce if tu ne le mets pas sur tes boutons Oo

Répondre à Brachior

4

marhra, le 11 nov 2008 à 17:01:52

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 ?

Répondre à marhra

5

 marhra, le 11 nov 2008 à 17:36:11

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.

Répondre à marhra