Autor | Zpráva | ||
---|---|---|---|
valecekm Profil |
#1 · Zasláno: 24. 6. 2009, 15:31:07
Dobry den. Chtel bych poprosit skusenejsi jestli by nevedeli co se deje.
Muj problem je takovej: potrebuji zjistit vysku jednoho div s id a vysku plochy v ktere je tag body abych nasledne mohl porvest matematickej vypocet a vycentrovat obsah webu odshora dolu. Vim ze existuje reseni pres CSS, ale to momentalne neresi muj problem. mam tam promenne at uz to s var nebo bez nej to je jedno Tag_body a Id_body, kterym zjistuju vysku. ovsem nejde stim pocitat matematicky z cehoz vypliva ze se to asi nezjisti nebo to nevrati cislo nebo opravdu nevim. Kdyz promene Tag_body nebo Id_body napisu ze se rovna jen proste cislu, tak to spocita, ale takto ne jak je to uvedeno v priklade. Skousel sem tam davat i eval a jiny veci, ktery urci ze je to cislo ten zjistenej vysledek, ale porad zadnej vysledek. Ukazka scriptu: Nefunguje: Tag_body = document.getElementByTagName("body").scrollHeight Id_body = document.getElementById("body").offsetHeight function ZmenTopPos() { document.getElementById("body").style.top=Math.round((Tag_body-Id_body)/2)+"px"; } Kdyz zadam nejake cisla misto zjistovani funguje: Tag_body = 1000 Id_body = 744 function ZmenTopPos() { document.getElementById("body").style.top=Math.round((Tag_body-Id_body)/2)+"px"; } Pokud by jste nekdo vedel kde delam chbybu nebo jestli vysku zjistuji spatne, tka mi prosim napiste. Dekuju |
||
Nox Profil |
#2 · Zasláno: 24. 6. 2009, 15:36:09
Použij funkci parseInt
|
||
Chamurappi Profil |
#3 · Zasláno: 24. 6. 2009, 15:40:27 · Upravil/a: Chamurappi
Reaguji na valecekm:
Vlastnost „scrollHeight“ na elementu vrací číslo vždy. Vlastnost „scrollHeight“ na kolekci elementů neexistuje, takže vrací undefined. Metoda document.getElementById("body") vrací element s atributem id="body". Metoda document.getElementsByTagName("body") vrací kolekci elementů jménem „body“. Metoda document.getElementByTagName("body") neexistuje a její volání způsobí chybu. Element <body> můžeš pohodlně najít v document.body. |
||
Časová prodleva: 15 let
|
0