Autor | Zpráva | ||
---|---|---|---|
Generátor Profil * |
#1 · Zasláno: 29. 3. 2008, 20:30:28
Chtěl bych prostřednictvím javascriptu přidat do stránky div s obsahem. Zkoušel jsem toto:
document.getElementsByTagName('body').firstChild.innerHTML += ... Ale bez úspěchu. Neví někdo jak to udělat? |
||
Joker Profil |
#2 · Zasláno: 29. 3. 2008, 20:34:17
Generátor
"Čistý" způsob je: 1. vytvořit nový element (document.createElement()) 2. nastavit mu požadované vlastnosti (setAttribute() atd.) 3. přilepit ho na požadované místo v dokumentu (*nějakýelement*.appendChild() apod.) |
||
Str4wberry Profil |
#3 · Zasláno: 29. 3. 2008, 20:58:52
Odpovídám Generátoru:
„Nečistý“ způsob je: document.getElementsByTagName('body')[0].innerHTML += …; |
||
Generátor Profil * |
#4 · Zasláno: 29. 3. 2008, 22:56:18
Díky, jen když zavolám
document.body.appendChild(element); document.body has no properties Našel jsem, že v XHTML nelze takhle k body přistupovat. Nevím co je na tom pravdy, ale řešení jsem nenašel. |
||
peta Profil |
#5 · Zasláno: 1. 4. 2008, 09:28:20 · Upravil/a: peta
Generátor
"Nevím co je na tom pravdy, ale řešení jsem nenašel" viz Str4wberry document.getElementsByTagName('BODY')[0] getElement---s---ByTagName, to esko rika o mnoho elementech, cili funkce vraci typ array nikoliv objektHTML, na ktery by slo navazat firstChild. zkus priste alert(document.getElementsByTagName('BODY')) pravdy je na tom hodne, tam existuje documentElement misto body, mam ten dojem. Vetsinou funguje tagName a kdyz ne, je treba napsat si podminku pro ruzna body. |
||
Chamurappi Profil |
#6 · Zasláno: 1. 4. 2008, 09:37:16
Reaguji na petu:
„tam existuje documentElement misto body“ Nesmysl, document.documentElement je <html>, document.body je <body>. V XHTML document.body nefunguje a document.getElementsByTagName('BODY')[0] také ne. Generátor ale XHTML nejspíš nepoužívá, takže ho tohle nemusí trápit. Reaguji na Generátor: Chybu ti pravděpodobně hlásí proto, že se pokoušíš přidávat cosi do <body> v okamžiku, kdy tento elementu v DOMu ještě neexistuje. |
||
Časová prodleva: 4 dny
|
|||
spacer Profil * |
#7 · Zasláno: 5. 4. 2008, 00:10:15
Caute,
tiez potrebujem pomocou JS pridat novy element do uz existujuceho a robim to po nacitani stranky takze by malo byt vsetko ok. Robim to postupom ako opisal v druhom prispevku Joker, problem je ale v tom, ze nevidim zmenu. Ked si dam vypisat obsah pomocou xxx.outerHTML tak je vsetko ok, ale jednoducho nevidim ze by sa naozaj vykonala. Treba to nejak refreshovat alebo nieco podobne? Dik spacer |
||
Časová prodleva: 16 let
|
0