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 :

redimension iframe cross sub domain


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    495
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 495
    Par défaut redimension iframe cross sub domain
    Bonjour,

    J'ai fait un petit script pour redimensionner une iframe (pas de barres de scroll).
    Ca fonctionne tres bien quand il n'y a qu'une seule iframe..
    Mais la, j'aurais besoin d'en avoir 4 dans la meme page.. Et la solution de specifier un ID pour chaque n'est pas faisable..

    Et je n'arrive pas a modifier le script pour cibler l'iframe correspondante..

    Si qq'un a une idée..

    dans la page html qui inclus les iframe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <script language="javascript">
        document.domain = "mondomaine.fr";
    </script>
     
    <iframe  id="iframe" name="myframe" class="autoHeight" frameborder="0" scrolling="no" src="http://blabla.fr/frame/id/1757" width="730" ></iframe>
    dans la frame appellée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <script language="javascript">
        document.domain = "mondomaine.fr";
        $(window).load(function() {
            function setHeight() {
                parent.document.getElementById('iframe').height = $("html").outerHeight();
            }
            setHeight();
        });
    </script>

    Donc, la j'accede a l'iframe par son ID.. à partir d'elle meme.. y'a t-il des solutions pour acceder a l'iframe qui appelle la fonction, sans ID ? (habituellement "this").. mais la..

  2. #2
    Membre Expert Avatar de Willpower
    Homme Profil pro
    sans emploi
    Inscrit en
    Décembre 2010
    Messages
    1 009
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : sans emploi

    Informations forums :
    Inscription : Décembre 2010
    Messages : 1 009
    Par défaut
    Bonjour,

    Citation Envoyé par zevince Voir le message
    Et la solution de specifier un ID pour chaque n'est pas faisable...
    heu... des ID ne peuvent pas être identique dans un document...


    s'il s'agit d'iframe cross-domain, tu n'as pas accès à la page principale, et tu ne peux donc pas redimensionner l'iframe(depuis celle-ci) qui est un élément en faisant partie. tu dois faire le redimensionnement depuis la page principale.



    ps: désolé, je n'ai pas le temps là, je relirai ta question plus attentivement ce soir. (en espérant néanmoins t'avoir déjà apporté qqes infos utiles. ) :-)

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    495
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 495
    Par défaut
    En fait je me suis mal exprimé, surtout dans le sujet..
    le cross / sub domain, ca marche.. donc j'arrive a redimensionner l'iframe à partir d'elle meme, vu que des deux cotés j'ai le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script language="javascript">
        document.domain = "mondomaine.fr";
    </script>
    Par contre, ca ne marche que pour une seule iframe.. vu que j'y accède par son ID.. et que comme tu le dis fort justement, on ne peut pas avoir deux ID identiques..

    Donc y a t-il un moyen de dire a l'iframe d’accéder à son tag <iframe du document parent, sans passer par l'ID..

    avoir un équivalent de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    parent.document.getElementById('iframe').height
    mais sans utiliser getElementById..

  4. #4
    Membre Expert Avatar de Willpower
    Homme Profil pro
    sans emploi
    Inscrit en
    Décembre 2010
    Messages
    1 009
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : sans emploi

    Informations forums :
    Inscription : Décembre 2010
    Messages : 1 009
    Par défaut
    je ne sais pas si ça marche (je ne suis pas très friand des iframes) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    var monIframe = null;
    var f = window.parent.document.getElementsByTagName('iframe');
    for(var i=0;i<f.length;i++){
      if(f[i].src == self.location)
        monIframe = f[i];
    }
    if(monIframe){
      monIframe.height ....
    }
    else{
      // iframe non trouvée
    }

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    495
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 495
    Par défaut
    bonne idée, merci !
    je vais tester de ce pas .. je reviens pour te dire.. mais je pense que ca devrait marcher..

    Et.. je suis pas trop fan d'iframes non plus.. mais parfois, ca se justifie..

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    495
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 495
    Par défaut
    et oui, ca fonctionne

    Merci !

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

Discussions similaires

  1. Rafaîchissement d'un iframe "cross-domain"
    Par N_BaH dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 04/06/2015, 23h41
  2. Communication iframe cross-domain
    Par Invité dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 02/06/2010, 09h49
  3. Cross domain et iframe
    Par razorlight dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 08/03/2010, 19h03
  4. [javascript] Redimension IFrame avec un frameset
    Par mavina dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 21/06/2006, 16h12
  5. cross-domain iframe!
    Par bumasoft dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 28/11/2005, 10h37

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