#1 Mon 23 January 2006 15:22
- raphaelgeo
- Participant actif
- Date d'inscription: 14 Dec 2005
- Messages: 78
svg tag <g> recenser
voila j'ai un tage <G> regroupant deux figures comme suit :
Code:
<g id = "ensemble1" onclick='alert("eeeeeeeee"); zoomer(500)'> <circle id="lecercle" onclick = 'changebackgroundcolor(evt,"lecercle")' cx="10" cy="20" r="10" fill="red " stroke="blue" stroke-width="5" /> <circle id="zzzzzezezez" onclick = 'changebackgroundcolordandg()' cx="1000" cy="20" r="10" fill="red " stroke="blue" stroke-width="5" /> </g>
je voudrais savoir comment faire pour atteindre les figures dans un <g> en javascript.
j'ai essayé le code qui suit mais ça n'a pas l'air d'atteindre les element de mon <g> nommé "ensemble1".
voila donc en fait je voudrais utiliser l'equivalent du for each de VB en javascript :
for each machin in tag<g>...
Code:
function changebackgroundcolordandg(){ svgdoc1 = lacarte.getSVGDocument(); var root = svgdoc1.getElementById("image").getElementById("ensemble1"); alert(root); for(var i in root){ alert(root[i].id); }
d'avance merci
Hors ligne
#2 Mon 23 January 2006 15:52
Re: svg tag <g> recenser
salut,
est tu sur de cette ligne ?
var root = svgdoc1.getElementById("image").getElementById("ensemble")
cordialement,
alex
Dernière modification par alex (Mon 23 January 2006 15:52)
J'arrête le combat pour le SVG !! et je ne fais plus que de l'information.
SVG : Scalable Vector Graphic ou comment mettre de la vie sur votre site Internet.
www.ode43.fr
Hors ligne
#3 Tue 24 January 2006 14:56
- raphaelgeo
- Participant actif
- Date d'inscription: 14 Dec 2005
- Messages: 78
Re: svg tag <g> recenser
a vrai dire non
je pense que comme ca la variable "root" va simplement se contenter de stocker les collections d'objets allant du svgdoc au tag <g>
mais j'ai besoin de rentrer directement dans le tag <G>
et si je fais :
var root = svgdoc.getElementById("ensemble1") ça marche pas.
en fait la collection d'objets renvoit les composants de l'interface mais pas les figures composant le <g>.
en fait je crois qu'il faut aller chercher directement l'info au niveau de la structure xml avec les childnodes...
cordialement.
Dernière modification par raphaelgeo (Tue 24 January 2006 16:16)
Hors ligne
#4 Tue 24 January 2006 16:33
Re: svg tag <g> recenser
si tu veux on continue sur l'autre forum !! www.SVGfr.org, ca évitera de faire doublon !
a+
alex ou dariuspol !!
Dernière modification par alex (Tue 24 January 2006 16:34)
J'arrête le combat pour le SVG !! et je ne fais plus que de l'information.
SVG : Scalable Vector Graphic ou comment mettre de la vie sur votre site Internet.
www.ode43.fr
Hors ligne
#5 Wed 25 January 2006 10:13
- raphaelgeo
- Participant actif
- Date d'inscription: 14 Dec 2005
- Messages: 78
Re: svg tag <g> recenser
c'est bon voila le code finalisé :
Code:
function changebackgroundcolordandg(){ var i = 0 ; svgdoc2 = lacarte.getSVGDocument(); var root2 = svgdoc2.getElementById("ensemble1"); ttnoeuds = root2.getChildNodes() ; var j = ttnoeuds.length; var variable1; for(i=1;i<j;i++){ variable1 = ttnoeuds.item(i).id; /* alert(ttnoeuds.item(i).nodeName); */ if(variable1 != null){ svgdoc2.getElementById(variable1).setAttribute("fill", "salmon" ) } } }
cordialement
Hors ligne