Autor | Zpráva | ||
---|---|---|---|
meca Profil |
#1 · Zasláno: 16. 6. 2008, 09:13:46 · Upravil/a: meca
Achjo, si zas připadám jak looser - se mi ty problémy nějak nakupily a už si s nimi nevím rady.
var nav=document.getElementById(nav).childNodes; for (e=0; e<nav.length; e++) { nav[e].className=''; } Nevíte, proč to v IE píše, že objekt tuto vlastnost nebo metodu nepodporuje? Když vymažu nav[e].className='';, tak to mlčí. Děkuji moc. |
||
ShiraNai7 Profil |
#2 · Zasláno: 16. 6. 2008, 09:29:26
var nav=document.getElementById(nav).childNodes; ~ není toto nějaký pochybný zápis? pokud tedy už nemáš tu proměnnou definovanou ~ zkus tento zápis prvního řádku, nevím proč, ale exlporeru to někdy pomůže eval("var nav=document.getElementById('"+nav+"').childNodes;"); |
||
peta Profil |
#3 · Zasláno: 16. 6. 2008, 09:41:10
meca
document.getElementById(nav).childNodes alert(nav) alert(document.getElementById(nav)) co je v promenne nav? for (e=0; e<nav.length; e++) { alert(nav[e]) } co je v poli Nodu v nav? Je tam legalni element nebo TextNode, u ktereno nelze nastavovat className. U ktereho E to napise chybu? To se zjisti zas takto: for (e=0; e<nav.length; e++) { alert(e); nav[e].className=''; } co treba dat odkaz na cely script? ne? pak bych pozadal o zapujceni kristalove koule, ktera mi jej doplni :) |
||
peta Profil |
#4 · Zasláno: 16. 6. 2008, 09:46:52 · Upravil/a: peta
ShiraNai7
eval("var nav=document.getElementById('"+nav+"').childNodes;"); fuj, fuj. Spravne zapsany zapis funguje dobre bez eval. Eval je napadnutelny script pro zabezpecenou stranku: function funkce(promenna) {eval(promenna);} ty mas promenna = 'aaa' a ja ti tam poslu promenna='var x=document.createNode('\IFRAME\');... >>>odesli mi prihlasovaci udaje, kdyz je admin prihlasen<<<' pripadne zavolam ajax metodu, ktera vse provede na pozadi. :) A tento script ti tam vnutim misto nejakeho obrazku/smajliku. |
||
meca Profil |
#5 · Zasláno: 16. 6. 2008, 09:49:43
Ajooo... neuvědomil jsem si, že je to na internetu:
http://allfest.cz/js.js Má to za úkol to přehazování diskuse/kapely a galerie/reporty... http://allfest.cz/rock-for-people-2008 |
||
centi Profil |
#6 · Zasláno: 16. 6. 2008, 09:52:10
meca
childNodes vracia všetky DOM uzly, nie len HTML elementy. Takže vracia napr i textové reťazce a tie fakt vlastnosť className nemajú. Môžeš teda skúsiť: 1. použiť namiesto childNodes metódu getElementsByTagName("pozadovany_tag") alebo 2. do tvojho FOR cyklu pridať podmienku if (nav[e].nodeType == 1). nodeType 1 je HTML element |
||
meca Profil |
#7 · Zasláno: 16. 6. 2008, 09:58:14
centi
ÚÚžastný - děkuji ti moc. Tušil jsem, že to bude nějaká takovádle ptákovina... |
||
ShiraNai7 Profil |
#8 · Zasláno: 16. 6. 2008, 10:05:11
peta
Eval je napadnutelny script pro zabezpecenou stranku: I blbým Bookmarkletem můžu spustit libovolný javascript na libovolné stránce, tak nevím o jakém napadnutí se tady diskutuje. :-) |
||
Časová prodleva: 16 let
|
0