Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Contribuez
Contribuez Proposez vos articles, cours, tutoriels, questions/réponses pour les FAQ, sources et autres ressources pour la rubrique Web ainsi que ses sous-rubriques.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/06/2007, 17h08   #1
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 119
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 119
Points : 45 280
Points : 45 280
Par défaut [SRC] Attendre la fermeture d'une fille

Voici un petit code basé sur un setInterval dasn la page mère pour attendre la fermeture d'un fille.

Code :
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
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
 
<title>Nouvelle page 1</title>
<script type='text/javascript'>
 
function Tester(){
 
try{
    if(MaPop.location.href){}
  }
 
catch(e){ 
    clearInterval(runner)
    alert ('plus de pop' )    }
    }
 
var MaPop = window.open('about:blank','titre');
var runner 
 
function launch(){
 runner = setInterval(function(){Tester()},500)
} 
</script>
 
</head>
 
<body onload='launch()'>
</body>
 
</html>
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/06/2007, 18h58   #2
Expert Confirmé
 
Avatar de FremyCompany
 
Étudiant
Inscription : février 2006
Messages : 2 532
Détails du profil
Informations personnelles :
Âge : 20

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2006
Messages : 2 532
Points : 2 903
Points : 2 903
Envoyer un message via MSN à FremyCompany
Et pourquoi ne pas utilser popupWindow.closed (ou isClosed je sais plus) ?
__________________
Fremy
Pour vos développements Web et une navigation agréable, le tout gratuit :
1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !)
2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey
FremyCompany est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/06/2007, 19h56   #3
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 119
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 119
Points : 45 280
Points : 45 280
c'est crossBrowser ?
tu as un bout de code qui marche ?
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/06/2007, 15h16   #4
Expert Confirmé
 
Avatar de FremyCompany
 
Étudiant
Inscription : février 2006
Messages : 2 532
Détails du profil
Informations personnelles :
Âge : 20

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2006
Messages : 2 532
Points : 2 903
Points : 2 903
Envoyer un message via MSN à FremyCompany
FF : http://developer.mozilla.org/fr/docs/DOM:window.closed
IE : http://msdn2.microsoft.com/en-us/library/ms533574.aspx

Exemple : http://www.webreference.com/js/tutorial1/exist.html


Le mieux est de tester ainsi :
Code :
1
2
3
4
5
6
7
8
9
10
/*
  theWindow : est-ce que la fenêtre existe ?
  theWindow.open : est-ce que la fenêtre est une instance de l'objet window et est-ce ses propriétés sont encore accessibles (anciens navigateurs)
  theWindow.closed : la fenêtre est-elle fermée ?
*/
if (theWindow && theWindow.open && (typeof(theWindow.closed)=="undefined" || !theWindow.closed)) {
   // theWindow est une fenêtre encore ouverte !
} else {
   // theWindow n'existe pas ou a été fermée depuis.
}
Sur le site de mozilla on propose plus simple, et c'est toujours comme ca que j'ai fait :
Code :
1
2
  if (popupWindow && !popupWindow.closed) {
  }
__________________
Fremy
Pour vos développements Web et une navigation agréable, le tout gratuit :
1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !)
2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey
FremyCompany est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2007, 09h04   #5
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 119
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 119
Points : 45 280
Points : 45 280
oki mais toujours dasn un setInterval alors
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2007, 16h53   #6
Expert Confirmé
 
Avatar de FremyCompany
 
Étudiant
Inscription : février 2006
Messages : 2 532
Détails du profil
Informations personnelles :
Âge : 20

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2006
Messages : 2 532
Points : 2 903
Points : 2 903
Envoyer un message via MSN à FremyCompany
Ah mais sinon, tu peux aussi utilser onunload

Code :
1
2
3
4
5
6
7
8
9
10
if (popupWindow.attachEvent) { // IE-based
  popupWindow.attachEvent("onunload", function() {
    var e = this.event;
    // event
  })
} else { // FF-based
  popupWindow.addEventListener("unload", function(e) {
    // event
  }, true)
}
__________________
Fremy
Pour vos développements Web et une navigation agréable, le tout gratuit :
1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !)
2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey
FremyCompany est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2007, 18h40   #7
Expert Confirmé Sénior
 
Avatar de Auteur
 
Inscription : avril 2004
Messages : 4 796
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 4 796
Points : 5 119
Points : 5 119
on en revient à ça en somme

fenetre parent
Code html :
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
 
<html>
<head>
<title></title>
<script type="text/javascript">
<!--
var etatFenFille = "fermee";
var fenFille =null;
 
function ouvreFenFille()
{
  fenFille= window.open("fille.htm","","");
}
 
function retourneEtatFenFille()
{
 
  if (etatFenFille=="ouverte")
  {
    alert("Fenêtre fille ouverte");
    fenFille.focus();
  }
  else if (etatFenFille=="fermee")
       {
          alert("Fenêtre fille fermée");
       }
       else
       {
          alert("Erreur");
       }
}
 
//-->
</script>
</head>
 
<body>
 
<input type="button" value="Ouvrir la fenêtre fille" onclick="ouvreFenFille()" />
 
 
</body>
 
</html>

puis dans la pop-up :
fille.htm

Code html :
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
 
<html>
<head>
<title></title>
 
<script type="text/javascript">
<!--
function fermeture()
{
 var parent = window.opener;
 parent.etatFenFille = "fermee";
 
 parent.retourneEtatFenFille();
}
 
function ouverture()
{
 var parent = window.opener;
 parent.etatFenFille = "ouverte";
 
 parent.retourneEtatFenFille();
}
 
 
//-->
</script>
 
</head>
 
<body onunload="fermeture()" onload="ouverture()">
 
coucou
 
 
</body>
 
</html>
Auteur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2007, 11h06   #8
Membre éprouvé
 
Avatar de yjuliet
 
Homme Yvan
Consultant informatique
Inscription : août 2006
Messages : 360
Détails du profil
Informations personnelles :
Nom : Homme Yvan
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Consultant informatique
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : août 2006
Messages : 360
Points : 402
Points : 402
Citation:
Envoyé par FremyCompany
Et pourquoi ne pas utilser popupWindow.closed (ou isClosed je sais plus) ?
pour commencer parce que MS a référencé un bug dans IE sur les appels à closed ... : http://support.microsoft.com/kb/q241109/
C'est pas hyper récent et à priori corrigé dans IE7, mais je suis tombé dessus au boulot sous IE6 ...
__________________
yjuliet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2007, 11h19   #9
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 119
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 119
Points : 45 280
Points : 45 280
heu non MS à corrigé le bug du opener en lecture seule ...
Je n'ai rien lu sur le closed ...
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/11/2011, 13h07   #10
Membre régulier
 
Avatar de amerex
 
Inscription : septembre 2007
Messages : 224
Détails du profil
Informations personnelles :
Âge : 25
Localisation : Canada

Informations forums :
Inscription : septembre 2007
Messages : 224
Points : 91
Points : 91
Je suis vraiment le seul qui a remarqué le "fermeture d'une fille" ?
__________________
Amerex
«La chance sourit aux audacieux»
Ms Access, Ms Excel, Ms FrontPage, Expression Web, Crystal, UniVerse, Basic, SQL, PHP, VBA...

N'oubliez pas de noter les messages!
amerex est déconnecté   Envoyer un message privé Réponse avec citation 02
Vieux 17/12/2011, 21h41   #11
Expert Confirmé Sénior
 
Avatar de Auteur
 
Inscription : avril 2004
Messages : 4 796
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 4 796
Points : 5 119
Points : 5 119
Citation:
Envoyé par amerex Voir le message
Je suis vraiment le seul qui a remarqué le "fermeture d'une fille" ?
tu expliques ce qui t'amuse ?


C'est une fenêtre mère et une fenêtre fille. Mais si tu veux tu peux écrire un fenêtre père et un fenêtre fils mais tu fais une faute de français.
Auteur est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h20.


 
 
 
 
Partenaires

Hébergement Web