Ok merci, j'ai la réponse maintenant, je pensais que l'on pouvais mettre un attribut name sur les balises div, c'est donc pour cela que ca me retourne 0 à chaque fois. Ce qui revient à dire qu'un div doit aussi être unique.Envoyé par SpaceFrog
Ok merci, j'ai la réponse maintenant, je pensais que l'on pouvais mettre un attribut name sur les balises div, c'est donc pour cela que ca me retourne 0 à chaque fois. Ce qui revient à dire qu'un div doit aussi être unique.Envoyé par SpaceFrog
les div n'acceptent pas l'attribut name et donc ton navigateurs ne sait pas les retrouver grace à la methode getElementsByName.
http://giminik.developpez.com/xhtml/div.html
Suit les conseils de SpaceFrog
parcontre un truc curieux ...
il ne sait pas chopper l'objet par le name mais il peut donner son 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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <style type="text/css"> div {width:200px; background-color:gray; } </style> <script type="text/javascript"> function test(obj) { var compteur=0; var objs = document.getElementsByTagName('div'); for(i=0;i<objs.length;i++){ compteur+=(objs[i].id.substr(0,2)==obj.id.substr(0,2))?1:0; } alert(compteur) alert(objs[10].name) } </script> </head> <body style="text-align:right;"> <form> <div id="v1_1" onMouseOver="test(this)" >voiture 1</div><br/> <div id="v1_2" onMouseOver="test(this)">voiture 1</div><br/> <div id="v1_3" onMouseOver="test(this)" >voiture 1</div><br/> <div id="v2_1" onMouseOver="test(this)">voiture 2</div><br/> <div id="v2_2" onMouseOver="test(this)" >voiture 2</div><br/> <div id="v2_3" onMouseOver="test(this)">voiture 2</div><br/> <div id="v3_1" onMouseOver="test(this)" >voiture 3</div><br/> <div id="v3_2" onMouseOver="test(this)">voiture 3</div><br/> <div id="v3_3" onMouseOver="test(this)" >voiture 3</div><br/> <div id="v3_4" onMouseOver="test(this)">voiture 3</div><br/> <div id="v4" name="coucou" onMouseOver="test(this)">voiture 4</div> <form> </body> </html>
Oui c'est pour cela que ça m'a trompé puisque je faisais un alert sur object.name et ça me l'affichait correctement. En clair, tu peux mettre un attribut name sur ton div et l'afficher en javascript, mais tu ne peux pas l'exploiter avec le getElementsByName.
Je mets le sujet en résolu, car j'ai eu ma réponse. Encore merci à tous.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager