ugrás a tartalomhoz

childNodes[] Firefox alatt bugos?

ksgy · 2006. Szep. 18. (H), 12.59
hali!

van egy menum, ami kb igy nez ki:

<ol id="leftmenu">
    <li><a href="">menuitem1</a></li>
    <li><a href="">menuitem2</a></li>
    <li><a href="">menuitem3</a></li>
    <li><a href="">menuitem4</a></li>
    <li><a href="">menuitem5</a></li>
</ol>
van egy kis JS kod, amivel stilust szeretnek adni egy adott li-n belul a-nak:

document.getElementById('leftmenu').childNodes[active].childNodes[0].className='menuitem_selected';
az active valtozot megkapom, hogy hanyadik li-t kell atszinezni.
IE alatt semmi problema nincs, de FFox eleg erdekesen kezeli a dolgot:
1. li: childNodes[1].childNodes[0]
2. li: childNodes[3].childNodes[0]
3. li: childNodes[5].childNodes[0]
4. li: childNodes[7].childNodes[0]
stb

mig IE alatt szepen kezeli, ahogy kell:
1. li: childNodes[0].childNodes[0]
2. li: childNodes[1].childNodes[0]
3. li: childNodes[2].childNodes[0]
4. li: childNodes[3].childNodes[0]

nemigen mondott semmi okosat google, vagy en nem tudok keresni. :) most atmenetileg megoldottam browser vizsgalattal, de szeretnem megoldani, mert ez igy nem az igazi
elore is koszom a segitseg :)
 
1

textNode-ok miatt

toxin · 2006. Szep. 18. (H), 13.28
fx berakja textNode-ba a sortörést "\n " -t azért

így un. mint IE

<ul id="leftmenu"><li><a href="#">menuitem1</a></li><li><a href="#">menuitem2</a></li><li><a href="#">menuitem3</a></li><li><a href="#">menuitem4</a></li><li><a href="#">menuitem5</a></li></ul>
nem használsz FireBug extension-t? fx alá :S abban egyből lehet látni

üdv t
2

de hasznalok...

ksgy · 2006. Szep. 18. (H), 14.06
de, hasznalok, de nem jottem ra, hogy mitol lehet :)
koszi, kozben kaptam lobztol is egy megoldast:

document.getElementById('leftmenu').getElementsByTagName('li')[active].childNodes[0].className='menuitem_selected';
3

prototype

toxin · 2006. Szep. 18. (H), 14.45
alatt írtam volna, ha ott kérdezed, de a fentiből látszik hogy nem használod, abban ugye ennyi, ill. ilyesmi ezekben a napokban :)))

Element.down('leftmenu','li',active).addClassName('selected');


üdv t
4

hm...

ksgy · 2006. Szep. 18. (H), 16.52
de ahogy látom megnövelné az ősz hajszálak felbukkanásának idejét :) ránézek majd, köszi!