begin process at 2010 02 10 12:36:37
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Fenêtre & Pop-up

 > DALOGUE DE FENÊTRES MÈRE/FILLE

DALOGUE DE FENÊTRES MÈRE/FILLE


 Information sur la source

Note :
9,3 / 10 - par 10 personnes
9,30 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Fenêtre & Pop-up Niveau :Initié Date de création :26/07/2001 Vu :19 200

Auteur : pi0up51

Ecrire un message privé
Site perso
Commentaire sur cette source (13)
Ajouter un commentaire et/ou une note

 Description

Script assez complet permet de découvrir prseque toutes les fonctionnalités de gestion des fen^tes en Javascript (tant pour la fen^tre d'appel aue la fenêtre activée )

Source

  • fenetre_mere_fille.html
  • <html>
  • <head>
  • <title>Pour approfondir les dialogues possibles entre page appelant
  • fen&ecirc;tre et fen&ecirc;tre appel&eacute;e..ICI page appelante..La Maman..!</title>
  • <script language="JavaScript"><!--
  • var flag=false;// Variable globale à cette page
  • /*********
  • flag est un boolean FAUX si pas de fenêtre
  • et VRAI si fenêtre
  • Ceci pour éviter l'erreur si on tente d'écrire dans
  • une fenêtre non créée..!
  • **********/
  • function create_fen()
  • {
  • fen1=window.open('','pedagogie',
  • 'width=300,height=200,left=200,top=100,screenX=200,screenY=100');
  • //Ci-dessus: (left,top) pour IExplorer et (screenX ,screenY) pour Netscape
  • fen1.focus();// pour que cette fenêtre soit toujours en avant..!
  • flag=true; // pour mémoriser l'existence de cette fenêtre..!
  • }
  • function ecrire_fen()// rôle : écrire la lettre dans la fenêtre..
  • {if (flag) // donc , si la fenêtre existe..
  • {
  • fen1.document.open()
  • fen1.document.write('<body bgcolor="oldlace">');
  • fen1.document.write('<font color="navy" size=+2 face="Brush Script MT,Arial">');
  • fen1.document.write(document.fmere.zone.value);
  • fen1.document.write('</font>');
  • fen1.document.write('</body>');
  • fen1.document.close();
  • fen1.focus();
  • }else mes_err(); // si la fenêtre n'existe pas ..on prévient!
  • }
  • function page_fen()// Emettre une page à la fenêtre
  • {if (flag)// si fenêtre existe
  • {
  • fen1.location.href="fille.html";
  • fen1.focus();// fenêtre en avant.
  • }else mes_err();// si la fenêtre n'existe pas on prévient.
  • }
  • function close_fen()//pour fermer la fenêtre
  • {if (flag)// si la fenêtre existe
  • {
  • fen1.close();
  • flag=false; // mémorisation de fenêtre n'existant pas.
  • }else mes_err();// si elle n'existe pas on prévient.
  • }
  • function mes_err()// le message d'erreur..
  • { alert('Créez d\'abord la fenêtre..!'); }
  • //-->
  • </script>
  • </head>
  • <body bgcolor="#EEEEEE" onUnload="JavaScript:if (flag) fen1.close();">
  • <form name="fmere"><b><font face="Verdana,Arial"><font color="#333333"><font size=-1>Ce
  • script permet d'explorer les possibilit&eacute;s de gestion des fen&ecirc;tres.</font></font></font></b>
  • <br><b><font face="Verdana,Arial"><font size=-1><font color="#333333">Remarquez
  • bien quelques unes des fonctionnalit&eacute;s du</font> <font color="#FF0000">'dialogue
  • MERE/FILLE'</font></font></font></b>
  • <br>&nbsp;
  • <p><font face="Verdana,Arial"><font color="#000099"><font size=-2>Je suis
  • la 'Maman' ( page d'appel ) et je peux &eacute;crire &agrave; ma 'Fille'
  • ( la fen&ecirc;tre ).</font></font></font>
  • <br><font face="Verdana,Arial"><font color="#000099"><font size=-2>Ma 'Fille'
  • peut aussi m'&eacute;crire...!</font></font></font>
  • <p><b><font face="Verdana,Arial"><font color="#FF0000"><font size=-1>Testez
  • ..</font></font></font></b>
  • <br>&nbsp;
  • <table WIDTH="80%" >
  • <tr>
  • <td COLSPAN="2"><input type="button" value="Cr&eacute;er ma 'FILLE'"
  • onClick="create_fen()"></td>
  • </tr>
  • <tr>
  • <td><input type="button" value="Ecrire &agrave ma 'Fille'"
  • onClick="ecrire_fen()"></td>
  • <td ALIGN=RIGHT><textarea cols=25 rows=5 name="zone">Taper ici le contenu
  • de la lettre</textarea></td>
  • </tr>
  • <tr>
  • <td COLSPAN="2"><input type="button" value="Mettre une Page &agrave; la fen&ecirc;tre"
  • onClick="page_fen()"></td>
  • </tr>
  • <tr>
  • <td ALIGN=CENTER COLSPAN="2">
  • <br><input type="button" value="Refermer la Fen&ecirc;tre"
  • onClick="close_fen()"></td>
  • </tr>
  • </table>
  • </form>
  • </body>
  • </html>
  • fille.html
  • <html>
  • <title>La fenêtre FILLE ..Elle peut recevoir des commandes depuis
  • la page appelante ( la Mère )..et aussi émettre des commandes vers
  • sa 'mère'..</title>
  • <script language="JavaScript"><!--
  • function lettre_a_maman()// rôle: écrire dans la page appelante 'Maman'
  • {if (opener != null)
  • opener.document.fmere.zone.value="Coucou Maman..!";
  • else {
  • alert("Maman n'est pas là..!C'est elle qui doit m'appeler !" );
  • location.href="fenetre_mere_fille.html";
  • }
  • /**** opener représente en JavaScript la page ayant ouvert la fenêtre ..
  • donc sa 'Mère'..Donc opener.document est la Page HTML : mere.html
  • ******************************************************************/
  • }
  • //-->
  • </script>
  • <body bgcolor="#aaffff">
  • <center>
  • Je suis la FILLE de la page principale,<br>
  • mais je peux toujours appeler ma 'M&egrave;re<br>
  • et bien d'autres choses encore ..!<br>
  • <br>
  • Vous pouvez v&eacute;rifier.
  • <br>
  • <form name="ffille">
  • <input type="button" value="Ecrire &agrave; Maman"
  • onClick="lettre_a_maman()">
  • </form>
  • </center>
  • </body>
  • </html>
fenetre_mere_fille.html

<html>
<head>
  <title>Pour approfondir les dialogues possibles entre page appelant
fen&ecirc;tre et fen&ecirc;tre appel&eacute;e..ICI page appelante..La Maman..!</title>
<script language="JavaScript"><!--
var flag=false;// Variable globale à cette page
/*********
flag est un boolean FAUX si pas de fenêtre 
et VRAI si fenêtre
Ceci pour éviter l'erreur si on tente d'écrire dans
une fenêtre non créée..!
**********/
function create_fen()
{
 fen1=window.open('','pedagogie',
'width=300,height=200,left=200,top=100,screenX=200,screenY=100');
//Ci-dessus: (left,top) pour IExplorer et (screenX ,screenY) pour Netscape
 fen1.focus();// pour que cette fenêtre soit toujours en avant..! 
 flag=true; // pour mémoriser l'existence de cette fenêtre..!
}
function ecrire_fen()// rôle : écrire la lettre dans la fenêtre..
{if (flag) // donc , si la fenêtre existe..
 {
 fen1.document.open()
 fen1.document.write('<body bgcolor="oldlace">');
 fen1.document.write('<font color="navy" size=+2 face="Brush Script MT,Arial">');
 fen1.document.write(document.fmere.zone.value);
 fen1.document.write('</font>');
 fen1.document.write('</body>');
 fen1.document.close();
 fen1.focus();
 }else mes_err(); // si la fenêtre n'existe pas ..on prévient!
}
function page_fen()// Emettre une page à la fenêtre
{if (flag)// si fenêtre existe
 {
 fen1.location.href="fille.html";
 fen1.focus();// fenêtre en avant.
 }else mes_err();// si la fenêtre n'existe pas on prévient.
}
function close_fen()//pour fermer la fenêtre
{if (flag)// si la fenêtre existe
 {
 fen1.close();
 flag=false; // mémorisation de fenêtre n'existant pas.
 }else mes_err();// si elle n'existe pas on prévient.
}
function mes_err()// le message d'erreur..
{ alert('Créez d\'abord la fenêtre..!'); }
//-->
</script>
</head>
<body bgcolor="#EEEEEE" onUnload="JavaScript:if (flag) fen1.close();">
<form name="fmere"><b><font face="Verdana,Arial"><font color="#333333"><font size=-1>Ce
script permet d'explorer les possibilit&eacute;s de gestion des fen&ecirc;tres.</font></font></font></b>
<br><b><font face="Verdana,Arial"><font size=-1><font color="#333333">Remarquez
bien quelques unes des fonctionnalit&eacute;s du</font> <font color="#FF0000">'dialogue
MERE/FILLE'</font></font></font></b>
<br>&nbsp;
<p><font face="Verdana,Arial"><font color="#000099"><font size=-2>Je suis
la 'Maman' ( page d'appel ) et je peux &eacute;crire &agrave; ma 'Fille'
( la fen&ecirc;tre ).</font></font></font>
<br><font face="Verdana,Arial"><font color="#000099"><font size=-2>Ma 'Fille'
peut aussi m'&eacute;crire...!</font></font></font>
<p><b><font face="Verdana,Arial"><font color="#FF0000"><font size=-1>Testez
..</font></font></font></b>
<br>&nbsp;
<table WIDTH="80%" >
<tr>
<td COLSPAN="2"><input type="button" value="Cr&eacute;er ma  'FILLE'" 
onClick="create_fen()"></td>
</tr>

<tr>
<td><input type="button" value="Ecrire &agrave ma 'Fille'" 
onClick="ecrire_fen()"></td>

<td ALIGN=RIGHT><textarea cols=25 rows=5 name="zone">Taper ici le contenu
de la lettre</textarea></td>
</tr>

<tr>
<td COLSPAN="2"><input type="button" value="Mettre une Page &agrave; la fen&ecirc;tre" 
onClick="page_fen()"></td>
</tr>

<tr>
<td ALIGN=CENTER COLSPAN="2">
<br><input type="button" value="Refermer la Fen&ecirc;tre" 
onClick="close_fen()"></td>
</tr>
</table>
</form>
</body>
</html>

fille.html

<html>
<title>La fenêtre FILLE ..Elle peut recevoir des commandes depuis
la page appelante ( la Mère )..et aussi émettre des commandes vers
sa 'mère'..</title> 
<script language="JavaScript"><!--
function lettre_a_maman()// rôle: écrire dans la page appelante 'Maman'
{if (opener != null)
 opener.document.fmere.zone.value="Coucou Maman..!";
 else {
        alert("Maman n'est pas là..!C'est elle qui doit m'appeler !" );
        location.href="fenetre_mere_fille.html";
      }
/**** opener représente en JavaScript la page ayant ouvert la fenêtre ..
donc sa 'Mère'..Donc opener.document est la Page HTML : mere.html 
******************************************************************/
}
//-->
</script>
<body bgcolor="#aaffff">
<center>
Je suis la FILLE de la page principale,<br>
mais je peux toujours appeler ma 'M&egrave;re<br>
et bien d'autres choses encore ..!<br>
<br>
Vous pouvez v&eacute;rifier.
<br>
<form name="ffille">
<input type="button" value="Ecrire &agrave; Maman" 
onClick="lettre_a_maman()">
</form>
</center>
</body>
</html>
 

 Conclusion

La propriété opener.document permet à la page fille.html d'écrire dans un objet de la page mère.Fenêtre fille put utiliser variables ou fonctions definies dans la page d'appel (ici fenetre_mere_fille.html)

Volà, j'espère ke ça vous permettra de mieux comprendre la gestion des fen^tre avec Javascript.
Bonn' prog à tous !!

@++
pi0up51
www.infobox51.fr.st


 Sources du même auteur

EVENT HANDLER (INFO-AIDE FORMULAIRE + QQS FONCTIONS)
FRACTALE MANDLEBROT (GÉNÉRER EN JS AVEC BOUCLE FOR..)
POPUP QUI AFFICHE LE TEMPS DE CONNECTION SUR UNE PAGE ;)
INFOBULLE SOUS IE ET/OU NETSCAPE
DESSINER UN HISTOGRAMME (DYNAMIQUEMENT ! :)

 Sources de la même categorie

Source avec Zip Source avec une capture FENETRE D'ACTUALITE par kazma
Source avec Zip Source avec une capture CLASS POP-IN AVEC EFFET SOUS JQUERY DE "CONNEXION" STYLE CS ... par Nementon
Source avec Zip Source avec une capture FENETRE DE LOGIN par kazma
Source avec Zip Source avec une capture MESSAGES VIRTUELS par grarestephane
Source avec Zip Source avec une capture ENVOIE DE MESSAGE AUTOMATIQUE par grarestephane

Commentaires et avis

Commentaire de tareumleretour le 25/08/2003 22:59:27

Les Zip's ça existe.............................

Commentaire de pi0up51 le 28/02/2004 23:07:40

Ben faut croire que non gros lourd..

Commentaire de mojo9 le 07/10/2004 10:21:17

Comment te remercier de ce qcript que tu as ecrit !!!
Il m'as beaucoup aidé !!!
merci encore et a bientot !

Commentaire de c3ducteur le 19/11/2004 23:09:11

trop bien le script !! bien joué

Commentaire de mobman02 le 09/02/2005 20:27:23

salut, bien expliquer comme script !
Maintenant, j'ai un probleme pour l'adapter a mes besoins.

Je voudrais que, quand l'upload d'une image est fini dans la popup, c'est a dire, une fois que la fenetre fille a ete recharger par le formulaire, l'url (que je sort de php, c'est pas ca le prob) s'ecrive dans la page mere...
Je n'arrive pas :(

Commentaire de mojo9 le 10/02/2005 13:22:36

je vois le truc comme ca moi :

opener.document.fromulaire.champ.valeur = 'xxxxx';

A mettre dans la fenetre fille.

Apres je peut me tromper ou ne pas avoir compris ta question...

@+ !

Commentaire de mobman02 le 10/02/2005 13:45:12

C'est bon j'ai reussi !
Et, question, est-ce que ca marche si le input est de type HIDDEN ?
Si je veut par exemple remplir un champs input text disable (pour pas que le mec puisse changer l'url) et en meme temps, remplir un input hidden, avec la meme valeur.
Je fait deux fois la fonction opener ?

(dsl je suis une quiche en javascript)

Commentaire de jlassira05 le 29/06/2005 17:38:23

salut!

je ne vois pas ou la fille peut recuperer une variable de sa mere !! pourriez vous m'aider svp car ca m'interesse !

Commentaire de pagextchab2 le 18/10/2006 19:51:28

Avez-vous utliser ce code afin de remplir un combo et tester avec IE.

Commentaire de pagextchab2 le 18/10/2006 20:12:19

Pour récupérer le infos, utilises un opener

Commentaire de yurelias le 21/11/2006 15:30:25

code pas mal et bien annoté, c'est ce que j'avait besoin.

Mais helas je n'arive pas a recupéré la variable que j'envoie par la fille sur la mere que j'ai crée, alors que ça marche en le modifiant entre mere fille du source.

probleme du au php?  

Commentaire de yurelias le 21/11/2006 15:37:30

bon j'ai reussi a faire marché et je ne sait pas pour qu'elle raison cela ne marché pas ...    rhalala la logique d'un ordinateur ça me tue >.<

Commentaire de lionhell le 18/04/2009 12:04:15

Quand l'une ou l'autre se recharge la variable d'ouverture est perdue ... plus moyen d'accéder à la fille, ou inversement à la mère .

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix


HTC Hero

Entre 550€ et 550€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,156 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales