Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1186 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Iframe et communication avec le parent (solution)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Iframe et communication avec le parent (solution)

n°459864
da_s_monk
Awwwww! Good Job!
Posté le 17-07-2003 à 08:48:23  profilanswer
 

Salut tt le monde.
 
apres m'etre pas mal galéré à trouver une solution pour appeler une fonction du frame parent depuis un iframe (enfant donc...) voila la solution:
 
le frame parent on l'appel par.html et l'iframe ca va etre enf.html
 
alors par.html ressemble à ça:

Code :
  1. <html>
  2. <body onLoad="init();">
  3. <iframe src="enf.html" name="enfant"></iframe>
  4. </body>
  5. <script>
  6. function init(){
  7.      document.enfant.val = fonctionaappeler;
  8. }
  9. function fonctionaappeler(test){
  10.      alert(test);
  11. }
  12. </script>
  13. </html>


 
alors pour expliquer vite fait:  
     - val est une variable contenue dans enf.html, a ki on va donner un espece de pointeur sur la fonction fonctionaappeler (je sais y'a pas de pointeur en javascript mais je sais pas comment appeler ca...)
     - la fonction init() est obligatoirement dans par.html. elle ne peut pas etre dans un .js
     - fonctionaappeler peut etre dans un .js
 
maintenant le code de enf.html:

Code :
  1. <html>
  2. <body>
  3. <input type="button" onClick="clicked()" value="Click Me!!!">
  4. </body>
  5. <script>
  6. /* declaration de val*/
  7. val = null;
  8. /*declaration de clicked*/
  9. function clicked(){
  10.    if(val != null)
  11.            val("OUAI" );
  12. }
  13. </script>
  14. </html>


 
 
voila donc la on declare val et on l'initialise a null.
a l'initialisation de par.html, on attribut le "pointeur" vers fonctionaappeler. ensuite pour appeler cette derniere a partir de enf.html, il suffit de faire 'val()'.
le test est juste pour le cas ou enf.html est pas charger a partir par.html
 
voila j'espere que ca peut vous aider. si vous avez des solutions plus rapides je suis preneur.
 
allez bon courage a tous ;)

mood
Publicité
Posté le 17-07-2003 à 08:48:23  profilanswer
 

n°459968
MarvinLeRo​uge
In Colt We Trust
Posté le 17-07-2003 à 10:27:03  profilanswer
 

Plus rapide :
 
Dans ton iframe enfant, tu veux appeler une fonction du parent (ou d'un de ses enfants) :
 
window.parent.nomDeLIFrame.nomDeLaFonction (paramètres);


---------------
Dans le monde, il n'y a que 10 sortes de personnes : ceux qui savent compter en binaire et ceux qui ne savent pas
n°460037
da_s_monk
Awwwww! Good Job!
Posté le 17-07-2003 à 11:21:07  profilanswer
 

ouai j'avais test mais je sais pas pourquoi ca me disais que l'objet ne possédait pas la methode. donc g du faire ca.

n°460064
MarvinLeRo​uge
In Colt We Trust
Posté le 17-07-2003 à 11:43:30  profilanswer
 

J'ai une page avec 3 iframes dedans qui communiquent comme ça.
Je m'en sers tous les jours et ça marche nickel.


---------------
Dans le monde, il n'y a que 10 sortes de personnes : ceux qui savent compter en binaire et ceux qui ne savent pas

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Iframe et communication avec le parent (solution)

 

Sujets relatifs
[C++\VBA] Communication C++ VBA[batch dos] il y a t il une equivalent de [resolu + solution]
[batch dos] extraction de chaine dans un fichier [resolu + solution]Cherche doc sur MOC (methode organisationnel de communication)
Tri de valeur [resolu. solution inside]lien pour impreimer dans un iframe n'imprime que le iframe
Communication avec port usbLeft join est ce la bonne solution?
Comment faire d'une solution VBA un programme .exe ?Pourquoi ça fait chelou sous IE ? [+ SOLUTION]
Plus de sujets relatifs à : Iframe et communication avec le parent (solution)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR