IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Problèle d'accès iFrame, conflit avec innerHtml


Sujet :

JavaScript

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    80
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Avril 2002
    Messages : 80
    Points : 84
    Points
    84
    Par défaut Problèle d'accès iFrame, conflit avec innerHtml
    Salut,

    J'ai un petit soucis pour accéder au contenu de mon iFrame.

    Voici le code de la page contenant l'iFrame:
    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
     
    <html>
    <head>
    <script>
    function test() {
    	if (window.f1.launch != null) window.f1.launch("coucou");	
    }
    function inner() {
    	var divC = document.getElementById("idDiv");
    	divC.innerHTML = "<iframe name='f1' id='f1' src='iframe.html'></iframe>";
    }
    </script>
    </head>
     
    <body>
    <div id="idDiv">
    	<iframe name='f1' id='f1' src='iframe.html'></iframe>
    </div>
     
    <br>
    <a href="#" onClick="javascript:test();">test appel iFrame</a>
    <br>
    <a href="#" onClick="javascript:inner();">test innerHtml</a>
    </body>
    </html>
    Et voici le code de l'iFrame:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <html>
    <head>
    <script type="text/javascript">
    function launch(msg) {
    	alert("voici le message: "+msg);
    }
    </script>
    </head>
    <body>
    <div style="height:200px;width:300px;background:#dee;">Contenu</div>
    </body>
    </html>
    1er test :
    - Lorsque je charge la page et que j'appuye sur le bouton "test appel iFrame", l'alert apparait quelque soit le type de navigateur.
    - Lorsque j'appuye sur le bouton "test innerHtml", l'iFrame se recharge quelque soit le navigateur.
    - Si ensuite je reappuye sur le bouton "test appel iFrame", alors le message n'apparait que sur IE et Safari. Firefox ne m'affiche rien.


    2ème test:
    - Sur firefox, je recharge la page, et j'appuye sur le bouton "test innerHtml".
    - Ensuite j'appuye sur le bouton "test appel iFrame", et ca fonctionne !!
    - Par contre si je reappuye sur le bouton "test innerHtml", puis sur "test appel iFrame", là, ca ne fonctionne plus...


    Bref, il faut à tout prix que j'arrive à accéder à l'iFrame même quand elle est changé par un innerHtml, pourquoi cela ne fonctionne pas sur Firefox?
    une idée??

    Merci

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function inner() {
    	document.getElementById("f1").src = 'iframe.html';
    }

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    80
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Avril 2002
    Messages : 80
    Points : 84
    Points
    84
    Par défaut
    Oui en effet, c'est plus simple et ca marche
    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. modifier le contenu d'une table avec innerHTML
    Par francon81 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 31/05/2005, 09h02
  2. Réponses: 5
    Dernier message: 22/04/2005, 11h38
  3. Problème avec InnerHTML
    Par rat dgout dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 19/04/2005, 10h02
  4. Accés multi utilisateurs avec fstab
    Par Sun3clipse dans le forum Administration système
    Réponses: 2
    Dernier message: 26/08/2004, 15h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo