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 :

getElementsByName resultat différent sous Ie et Firefox


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2002
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 40
    Points : 39
    Points
    39
    Par défaut getElementsByName resultat différent sous Ie et Firefox
    Bonjour, je rencontre un problème dans le parcour des elements de ma page.

    lapage suivant comporte 9 div et un bouton. Le code du bouton permet de lister toutes les div. Ce code fonctionne sous firefox, mais pas sous ie ?

    quelqu'un peut-il m'eclairer ?

    Merci

    Voici le code
    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
    <html>
    <head>  
      <style type="text/css">
      .carrebleu {
         border: solid 1px;
         border-color: silver;
         padding: 5;
     
         background-color: #0050FF;
         color: white;
     
         position: absolute;
         cursor: default;
     
        width: 100px;
        height: 100px;
     }
     </style>
     
     </head>
      <body>
     
     <nobr><div id="toto" name="moveable" class="carrebleu" style="left:25;top:25;">1</div></nobr>
     <nobr><div name="moveable" class="carrebleu" style="left:125;top:25;">2</div></nobr>
     <nobr><div name="moveable" class="carrebleu" style="left:225;top:25;">3</div></nobr>
     <nobr><div name="moveable" class="carrebleu" style="left:25;top:125;">4</div></nobr>
     <nobr><div name="moveable" class="carrebleu" style="left:125;top:125;">5</div></nobr>
     <nobr><div name="moveable" class="carrebleu" style="left:225;top:125;">6</div></nobr>
     <nobr><div name="moveable" class="carrebleu" style="left:25;top:225;">7</div></nobr>
     <nobr><div name="moveable" class="carrebleu" style="left:125;top:225;">8</div></nobr>
     <nobr><div name="moveable" class="carrebleu" style="left:225;top:225;">9</div></nobr>
     
     
      <input type='button' name="moveable" style="position:absolute;left:500;top:500;width: 110px; height: 110px;" onclick="example8('moveable');" >
     
     
      <script>  
    	function example8(which){  	
     
     
    	  	var elts = document.getElementsByName(which);
    	  	alert(elts.length);
    		var msg = ['Utilisation de getElementsByName avec l\'attribut '+which+'\n'];
    		for (var i=0,el;el=elts[i];i++) {
    			  msg[msg.length] = '\n=========== node #'+i+' ===========\n';
    			  msg[msg.length] = "el.nodeName -> "+ el.nodeName + "\nel.value -> "+ el.value + "\nel.id -> "+ el.id +"\nel.checked -> "+ el.checked +"\n";
    		}
    		alert( msg.join(' ') );
    	}	
    </script>
     
      </body>
     </html>

  2. #2
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Dans IE,seuls les objets INPUT, BUTTON, TEXTAREA, ... peuvent être récupéré via leur nom (et ca me semple plutot normal, vu que pour l'attribut nom a été créé pour eux et pas pour d'autre types de balises)
    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

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2002
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 40
    Points : 39
    Points
    39
    Par défaut
    ok, merci
    Mais alors comment faire pour récuperer les div, et les modifier ?

  4. #4
    Membre régulier
    Inscrit en
    Avril 2004
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 131
    Points : 95
    Points
    95
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    getElementsByTagName("div");
    il me semble

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2002
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 40
    Points : 39
    Points
    39
    Par défaut
    ok merci beaucoup, ce n'est pas tres elegant comme méthode, vu que ça m'oblige a parcourir tout les elements de ma page et a tester
    chaque element pour voir si name="moveable". Mais ça me débloque quand même.
    Merci a tous

  6. #6
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById("ID")
    Ou si tu tiens à passer par name :
    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
    document.getByName = document.getElementsByName;
    document.getElementsByName=function(name,tag) {
        var results=null;
        tag=(tag)?tag:"*";
        if (document.all) {
           results=new Array();
           var all=document.getElementsByTagName(tag);
           for (var i=0; i<all.length; i++) {
               if (all[i].name==name) { results.push(all[i]); }
           }
        } else {
           var all = document.getByName(name);
           if (tag != "*") { 
              results=new Array();
              for (var i=0; i<all.length; i++) {
                  if (all[i].tagName.toLowerCase() == tag.toLowerCase()) {
                      results.push(all[i]);
                  }
              }
           } else {results=all;}
        }
        return results;
    }
    Il y a peut-être des fautes à corriger, j'ai tapé ca vite-vite...

    Utilsation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    // Résultat de type FF (Dans IE & FF)
    var r = document.getElementsByName("name");
     
    // Résultat de type IE (Dans IE & FF)
    r = (document.getElementsByName("name", "input")
                      .concat(document.getElementsByName("name", "textarea"))
                      .concat(document.getElementsByName("name", "button"))
                      .concat(document.getElementsByName("name", "img"))
                      );
    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

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2002
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 40
    Points : 39
    Points
    39
    Par défaut
    super merci beaucoup

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2002
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 40
    Points : 39
    Points
    39
    Par défaut
    c'est vu, j'ai modifié le code.
    merci

    PS: je suis en train de faire un petit drag and drop maison, ça vous interesse ?

  9. #9
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

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

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    non

    y'en a déja plein les propositions de code source ...
    mais tu peux y aller de ta contribution, si jamais tu réinventes le fil à coupeur l'eau tiède ...
    Ma page Developpez - Mon Blog 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

    Venez sur le Chat de Développez !

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

Discussions similaires

  1. Affichage différent sous IE et Firefox
    Par redwire dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 27/10/2007, 19h45
  2. Problème d'alignement différent sous IE et FireFox
    Par GTJuanpablo dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 23/06/2007, 14h37
  3. [javascript]coordonnées souris différentes sous IE et Firefox
    Par Fabouney dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 17/04/2007, 15h01
  4. Rendus différents sous IE et FireFox.
    Par Thanor dans le forum Mise en page CSS
    Réponses: 23
    Dernier message: 26/10/2006, 11h21
  5. GetElementsByName.length différent entre IE et FireFox
    Par seb34 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 14/06/2006, 17h13

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