Bonjour,
Juste une question :
Il n'existe toujours pas de solution, sous FF, pour fermer la fenêtre courante ?
Merci.
Bonjour,
Juste une question :
Il n'existe toujours pas de solution, sous FF, pour fermer la fenêtre courante ?
Merci.
Non : c'est à l'utilisateur de décider s'il veut fermer la fenêtre qu'il a ouverte, pas à toi !
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum
Merci,
Mais je trouve que c'est un peu déroutant pour un quelqu'un qui utilise à la fois IE et FF, non ?
Comment ça ?
Je comprends pas ta remarque...
Pour quelqu'un qui utilise à la fois IE et Firefox, il suffit de cliquer sur la croix qui ferme l'onglet ou la fenêtre, il n'y a rien qui change...![]()
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum
Je disais ça dans une situation que j'utilise.
J'ai une fenêtre de connexion avec saisie de l'identifiant et du mot de passe.
J'ai deux boutons : "Valider" et "Annuler".
Sous IE, un self.close associé au bouton "Annuler" ferme la fenêtre, pas sous FF.
Tu parles de quelle fenêtre ? Parce qu'une fenêtre ouverte par un script (pop-up) peut tout à fait être fermée par un script...
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum
Pardon, ma description est un peu succincte.
Ma "fenêtre" de saisie de l'identifiant et du mot de passe est en fait une div (lightbox).
Donc rien à voir avec une fenêtre et rien à voir avec self.close() au final...
Ensuite, tous les scripts de type lightbox possèdent une méthode permettant de fermer la lightbox.
Mais sans une once de code, c'est pas trop possible de t'aider.
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum
On est bien d'accord, je ne cherche pas à réaliser quelque chose qui ne l'est pas.
Sinon, un premier exemple avec les fichiers lightbox joints :
Un deuxième :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53 <!DOCTYPE html> <html> <head> <title> </title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link type="text/css" rel="stylesheet" href="lightbox-form.css"> <script src="lightbox-form.js" type="text/javascript"></script> <link rel="shortcut icon" type="image/x-icon" href="../favicon.ico" /> </head> <body onload="openbox('Connexion', 1);"> <form name="frmMain" method="post"> <div id="shadowing"></div> <div id="box"> <span id="boxtitle"></span> <div> <div style="padding-top:20px; font-family:arial; font-size:13px;"> Identifiant : <input type="text" name="txtLogin" /> </div> </div> <div> <div style="padding-top:20px; font-family:arial; font-size:13px;"> Mot de passe : <input type="password" name="txtPwd" /> </div> </div> <p> <br> <input type="submit" name="submit" value="Se connecter" style="width:100px"> <input type="button" name="cancel" value="Annuler" style="width:100px" onclick="x=window.open('', '_self', '', true); self.close('x'); window.close()"> </p> </div> <p align="center"> <font face="arial" size="5" color="Firebrick"> <strong> LE CONTENU DE MA PAGE </strong> </font> </p> </form> </body> </html>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67 <HTML> <HEAD> <script type="text/javascript"> function Ferme1() { window.open('about:blank','_parent',''); window.close(); } function Ferme2() { x=window.open('', '_self', '', true); window.close(); self.close('x'); window.close() } function Ferme3() { window.open('','_parent',''); window.close(); } function Ferme4() { window.open('','_self'); window.close(); } function Ferme5() { var objWin=window.open('', '_self',''); objWin.close(); return false; } function Ferme6() { // Avec demande de confirmation sous IE window.opener = window.self; window.close(); } </script> </HEAD> <BODY> <p align="center"> <!--<input type="button" name="cancel" value="Annuler" style="width:100px" onclick="x=window.open('', '_self', '', true); self.close('x'); window.close()">--> <input type="button" name="cancel1" value="Ferme1" style="width:100px" onclick="Ferme1()"> <br> <input type="button" name="cancel2" value="Ferme2" style="width:100px" onclick="Ferme2()"> <br> <input type="button" name="cancel3" value="Ferme3" style="width:100px" onclick="Ferme3()"> <br> <input type="button" name="cancel4" value="Ferme4" style="width:100px" onclick="Ferme4()"> <br> <input type="button" name="cancel5" value="Ferme5" style="width:100px" onclick="Ferme5()"> <br> <input type="button" name="cancel6" value="Ferme6" style="width:100px" onclick="Ferme6()"> </p> </BODY> </HTML>
Quel quiproquo
pc75, prends bien soin de choisir le bon vocabulaire sinon on ne va jamais pouvoir t'aider :
- fenêtre : onglet d'un navigateur, avec la barre d'URL et les boutons de contrôle
- fenêtre popup : fenêtre ouverte de manière programmée avec window.open ; avec ou sans boutons de contrôle
- lightbox : élément HTML apparaissant par-dessus un contenu existant, mais faisant partie du même document et de la même fenêtre
Tu peux fermer les fenêtres popup, mais pas la fenêtre principale. La règle est que JavaScript ne peut pas fermer une fenêtre qu'il n'a pas ouverte lui-même.
Bon, je clos le sujet car en fin de compte, j'ai eu la réponse à ma question, bien que je trouve le sujet intéressant.
A l'origine, je posais juste la question :
La discussion a ensuite évolué voire dérivé et je me suis surement mal exprimé.Juste une question :
Il n'existe toujours pas de solution, sous FF, pour fermer la fenêtre courante ?
@SylvainPV
Quand tu écris :
Pourtant sous IE, le navigateur se ferme bien si un seul onglet est ouvert et si plusieurs onglets sont ouverts, l'onglet concerné se ferme.Tu peux fermer les fenêtres popup, mais pas la fenêtre principale.
C'est pourquoi je pense que ça peut être "déroutant" pour quelqu"un qui utilise IE et FF.
Merci pour vos interventions.
Effectivement ça marche sur IE, mais il met un message d'avertissement :
![]()
Non, pas vraiment.Envoyé par pc75
Il est relativement rare selon moi d'utiliser deux navigateurs conjointement. C'est comme pour tout : chacun a ses habitudes et ses préférences et utilise un seul navigateur la plupart du temps. Quant aux rares qui le feraient, alors ils savent nécessairement qu'il y a des différences entre les deux et cela n'a rien de perturbant.
Enfin, peut-être faut-il éviter ce type d'action assez peu orthodoxe et non conforme aux bonnes pratiques si tu ne veux pas "dérouter" tes utilisateurs.
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum
Partager