boucle sur getElementsByClassName()

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : boucle sur getElementsByClassName()

boucle sur getElementsByClassName()

par VaN » 01 oct. 2008, 13:17

Bonjour,

j'ai un petit problème avec une boucle sur un getElementsByClassName().

J'ai une fonction, que voici :

Code : Tout sélectionner

function rollNews() { //alert(document.getElementById('newsContent').getElementsByClassName('news').length); var cursor = 0; for(var i = 0; i <= document.getElementById('newsContent').getElementsByClassName('news').length; i++) { document.getElementById('newsContent').getElementsByClassName('news')[i].style.display = 'none'; } //document.getElementById('newsContent').getElementsByClassName('news')[cursor].style.display = 'block'; }
qui va intéragir sur l'HTML suivant :

Code : Tout sélectionner

<div class="actualites"> <div class="title"></div> <div class="content" id="newsContent"> <p class="news">Les solutions pour d&eacute;crocher les meilleurs cr&eacute;dits. Pour faire plier les banques, qui pr&ecirc;tent de...</p> <p class="news">Test 2</p> </div> <div class="more"></div> </div>
Lancée par un onload sur le <body>, elle me renvoie l'erreur :
document.getElementById('newsContent').getElementsByClassName('news') is undefined


Ce qui est étrange, c'est que quand je fait un

Code : Tout sélectionner

alert(document.getElementById('newsContent').getElementsByClassName('news')[0].innerHTML);
la fonction me renvoie bien le contenu de la première news.

Comment ce fait'il que la fonction n'arrive pas à interpréter correctement la variable i, dans ma boucle ?