Autor | Zpráva | ||
---|---|---|---|
karelvit Profil * |
#1 · Zasláno: 23. 11. 2015, 19:16:11
Dobry den poťreboval bych po stisknutí tlačítka odkrýt něco co je skryté a z nějakého důvodu to nefunguje mohli by jste mi prosím poradit jak to opravit?
skrývám část textu tímto: .jmenoclassy { display: none; } a odkrývám tímto: function odkryt() { fhs = document.getElementsByClassName('jmenoclassy'); if(fhs.style.display != 'block') fhs.style.display = 'block'; else fhs.style.display = 'none'; } |
||
juriad Profil |
fhs není jeden element, ale „an array-like object of all child elements which have all of the given class names“.
|
||
karelvit Profil * |
#3 · Zasláno: 23. 11. 2015, 19:36:33
juriad:
a jak by se to dalo vyřešit? V js nejsem zběhlý. |
||
Fisir Profil |
#4 · Zasláno: 23. 11. 2015, 20:40:59
Reaguji na karelvita:
Záleží na tom, co chceš dělat. Chceš odkrýt pouze první element, který má třídu jmenoclassy , nebo všechny?
V prvním případě stačí za metodu getElementsByClassName() doplnit výběr prvního prvku pole – [0] . V tom druhém bude potřeba cyklus:
for(var i = 0; i < fhs.length; i++){ var c = fhs[i]; if(c.style.display != 'block') // … Dále bych doporučil přidat před deklaraci proměnné fhs klíčové slovo var , ať nevytváříš globální proměnnou.
|
||
Časová prodleva: 9 let
|
0