Autor | Zpráva | ||
---|---|---|---|
Pavel Dumbrovský Profil |
Dobrý den,
v JS neumím prakticky nic a proto prosím o pomoc: Je možné zjistit v průběhů načítání stránky výšku jednoho divu a nastavit tou hodnout výšku divu druhého? document.getElementById("middle").scrollHeight Toto mi zjistí výšku obsahu toho divu a jak to teď zakomponovat do <div style="height: xxx"> Díky. |
||
panther Profil |
#2 · Zasláno: 16. 11. 2009, 18:14:22
Pavel Dumbrovský:
nevím, čeho chceš dosáhnout, ale jsou to dva stejně dlouhé panely? |
||
Pavel Dumbrovský Profil |
#3 · Zasláno: 16. 11. 2009, 18:27:30
Ano tak něco.
|
||
Pavel Dumbrovský Profil |
#4 · Zasláno: 16. 11. 2009, 18:29:10
Ale ta metoda s tím pozadím mi určitě nepomůže, includuji tam vertikální panel s js fotogalerií, kterýmu se ale dává pevná šířka. Nejde tam dát height: 100%, jen pixely. Takže to chci zkusit takhle.
|
||
Pavel Dumbrovský Profil |
#5 · Zasláno: 16. 11. 2009, 20:37:30
panther:
Takže to nejde??? |
||
Chamurappi Profil |
#6 · Zasláno: 16. 11. 2009, 20:39:33
Reaguji na Pavla Dumbrovského:
Pomocí document.getElementById můžeš najít i ten druhý <div> a nastavit mu style.height = změřenáVýška + "px"; |
||
Pavel Dumbrovský Profil |
#7 · Zasláno: 16. 11. 2009, 20:51:00
Chamurappi:
Děkuju za pomoc, ale jak jsem psal, v JS neumím nic. zápis document.getElementById("motioncontainer").style.height = document.getElementById("middle").scrollHeight+"px"; mi nejde, mohl bys mi prosím říct, co je blbě? Díky. |
||
Chamurappi Profil |
#8 · Zasláno: 16. 11. 2009, 20:54:01
Reaguji na Pavla Dumbrovského:
Kam přesně ten zápis píšeš? Prosím o odkaz na živou ukázku. |
||
Pavel Dumbrovský Profil |
#9 · Zasláno: 16. 11. 2009, 20:58:02
http://www.obchodvm.cz/izolinvest/?page=stresni-izolace
- jde o nastavení výšky toho pohyblivého pravého JS panelu s fotkami. |
||
Chamurappi Profil |
#10 · Zasláno: 16. 11. 2009, 21:05:04 · Upravil/a: Chamurappi
Reaguji na Pavla Dumbrovského:
Nemůžeš elementu nastavovat výšku v době, kdy ještě neexistuje. Posuň ten <script> minimálně za počáteční značku <div id="motioncontainer">. |
||
Trejpa Profil |
#11 · Zasláno: 16. 11. 2009, 21:18:46
Pavel Dumbrovský:
http://qu.wu.cz/webtest/stejna-vyska-dvou-elementu.htm |
||
Pavel Dumbrovský Profil |
#12 · Zasláno: 16. 11. 2009, 21:23:24
Chamurappi:
Děkuji mockrát za pomoc! Funguje. :) Trejpa Prosím Tě, proč tam máš offsetHeight místo scrollHeight? Už jsem myslím četl něco o tom, že to neberou všechny prohlížeče - je to ten důvod? Nebo jde o to, že já scrollHeightem změřím obsah divu, kdežto offsetem změřím div jako takový? |
||
Trejpa Profil |
#13 · Zasláno: 16. 11. 2009, 22:01:59
Pavel Dumbrovský:
„Prosím Tě, proč tam máš offsetHeight místo scrollHeight?“ offsetHeight vrací aktuální výšku elementu. scrollHeight vrací vnitřní výšku bloku. Tento údaj je stejný jako u offsetHeight dokud element nemá posuvníky (overflow). Potom vrací skutečnou plochu mezi posuvníky (i to, co není vidět, ale bez posuvníků). Pro <body> je obvykle vhodnější scrollHeight, pro ostatní elementy spíš offsetHeight. Ale jak už jsem napsal, dokud nemá měřený element nějaké overfow, tak to může být jedno. Obě funkce fungují ve všech prohlížečích (IE 5.5+, FF, Opera, Safari, Chrome). To si ostatně můžeš na mých příkladech ověřit. |
||
Časová prodleva: 3 měsíce
|
|||
Bezzi Profil |
#14 · Zasláno: 22. 2. 2010, 08:04:58
Trejpa, Trejpa, Trejpa:
Chtel bych se zeptat jestli se tento styl da pouzit i pro nastaveni divu v jine strance. A jak bych tento js volal aby nastavil vysku divu? |
||
Trejpa Profil |
#15 · Zasláno: 22. 2. 2010, 10:24:41
Bezzi:
Tomu říkám oslovení. „Chtel bych se zeptat jestli se tento styl da pouzit i pro nastaveni divu v jine strance.“ Nerozumím. Chceš, aby výška něčeho na jedné stránce měnila něco na jiné stránce? A jak bych tento js volal aby nastavil vysku divu? Skripty se volají obvykle pomocí funkce. Příklad využití skriptu na srovnávání velikostí bloků uvedený na této stránce dokazuje pouze to, že to takto udělat lze. Pro rozvržení stránky se to však nepoužívá. |
||
Bezzi Profil |
#16 · Zasláno: 22. 2. 2010, 10:56:50
Trejpa:
Nelibi se ti osloveni?? " "Nerozumím. Chceš, aby výška něčeho na jedné stránce měnila něco na jiné stránce?" Ano chci aby div na jedne strance mi ovlivnoval treba iframe na strance druhe. O par textu vyse resi jak pomoci js menit velikost divu na jedne strance, tak me zajima jesti toto jde i ze stranky na stranku. Bohuzel sem asi jeste horsi ve znalosti js jak dotycny ktery toto vlakno zacal. Tak jestli muzu poprosit vysvetlit nejak polopaticky :-) |
||
Trejpa Profil |
#17 · Zasláno: 22. 2. 2010, 11:47:33
Bezzi:
Do nově otevřené stránky lze proměnnou dostat pomocí parametru v adrese, cookies nebo session. Takže třeba pomocí cookies: První stránka (zdroj): <div id=zdrojovy_element>Podle výšky tohoto prvku se to nastaví.<br><br><br><br></div> <script> var vyska=document.getElementById('zdrojovy_element').offsetHeight; var datum= new Date(); datum.setTime(datum.getTime() + 1000 * 60 * 60 * 24 * 14); // 14 dnů platnosti document.cookie = "vyska="+vyska+"px;expires=" + datum.toGMTString();// samotný zápis cookie </script> Druhá stránka (cíl): <div id=cilovy_element>Tento blok bude mít změněnou velikost.</div> <script> if (document.cookie.indexOf('vyska')!=-1){ var a=document.cookie.split(";"); for (i = 0; i < a.length; i++){b=a[i].split('='); if (b[0]=='vyska') document.getElementById('cilovy_element').style.height=b[1];}} </script> |
||
Bezzi Profil |
#18 · Zasláno: 22. 2. 2010, 12:04:36
Trejpa:
strasne moc moc dekuji, hned to jdu zkusit a kdyz to bude fungovat projedu si zdrojak abych priste nemusel otravovat :-) Jen jeste takovou drobnost da se ten druhy script pouzit i pro iframe?? jak? - ze by se podle urciteho divu prenastavyla vyska iframu? |
||
Trejpa Profil |
#19 · Zasláno: 22. 2. 2010, 12:11:58
Bezzi:
Druhá stránka (cíl): <iframe id=cilovy_element src=neco.html width=500 height=400></iframe> ... |
||
Bezzi Profil |
#20 · Zasláno: 22. 2. 2010, 12:39:24
Trejpa:
a druhy script davam mezi <iframe> a </iframe> jestli to dobre chapu |
||
Trejpa Profil |
#21 · Zasláno: 22. 2. 2010, 12:45:42
Bezzi:
Ne. Za něj. Mezi <iframe></iframe> patří alternativní obsah pro prohlížeče, které iframe nepodporují. Obvykle se tam dává odkaz na zobrazovanou stránku / soubor. |
||
Bezzi Profil |
#22 · Zasláno: 22. 2. 2010, 12:50:36
Trejpa:
:-( tam budu mit nekde chybu:-( kdyz dam do prvniho scriptu alert(vyska); zobrazi se mi na te strance velikost kterou zmeril ? Chci zjistit kde mam chybu jestli v mereni nebo v iframu |
||
Trejpa Profil |
#23 · Zasláno: 22. 2. 2010, 12:54:51 · Upravil/a: Trejpa
Bezzi:
window.alert(vyska) na konci prvního skriptu ti vypíše změřenou výšku. window.alert(document.cookie) na konci prvního skriptu ti vypíše všechny uložené cookies. Testovací stránka. |
||
Bezzi Profil |
#24 · Zasláno: 22. 2. 2010, 14:04:27
dekuji
okolo te session to bude dost podobne ne? ono totiz ty zasr*** cookie ma docela dost lidi zakazane :-( |
||
Trejpa Profil |
#25 · Zasláno: 22. 2. 2010, 14:33:24
|
||
Bezzi Profil |
#26 · Zasláno: 22. 2. 2010, 14:42:43
Velice ti dekuji za obrovsky kus tve ochoty. Uz neni na forech tolik lidi ochotnych pomahat VSEM.
|
||
Bezzi Profil |
#27 · Zasláno: 23. 2. 2010, 08:50:59
Vsechno funguje, kazdy js vraci spravnou hodnotu :-) ale iframe se neprenastavi :-( proc :-(
<iframe id="insol" src="http://ebeman.i-server.cz/Insolvency/demo.aspx" width="630px" height="1000px" frameborder="0" align="baseline" scrolling="no"> </iframe> <script language="JavaScript" type="text/javascript" > if (document.cookie.indexOf('vyska')!=-1){ var a=document.cookie.split(";"); for (i = 0; i < a.length; i++){b=a[i].split('='); if (b[0]=='vyska') document.getElementById('insol').style.height=b[1];}} window.alert(document.cookie); </script> |
||
Bezzi Profil |
#28 · Zasláno: 23. 2. 2010, 08:52:22
Uz vim, to cookie je prazdne :-(
|
||
Trejpa Profil |
#29 · Zasláno: 23. 2. 2010, 09:18:18
Bezzi:
Tak sem dej odkaz na problémovou stránku. (Absolutní rozměry jsou v HTML vždy pixely bez jednotky: width="630" height="1000".) |
||
Bezzi Profil |
#30 · Zasláno: 23. 2. 2010, 09:35:00
http://www.ebe.cz/ebe/firmapk.nsf/web/test - tady je ten muj problem. Nevznikne totiz cookie. Mel bych dotaz nezlo by to udelat pres parent?? ze by script rovnou prenastavil iframe v nadrazenem okne?
|
||
Téma pokračuje na další straně.
|
0