Autor | Zpráva | ||
---|---|---|---|
Fisak Profil |
#1 · Zasláno: 23. 5. 2013, 23:53:54
Dobrý den. Chtěl bych udělat posuvník dole ovšem konzole mi píše hlášku Uncaught TypeError: Cannot read property 'scrollHeight' of null
kod: <style> #chattext { background-color:transparent; width: 25%; height: 150px; padding:5px 5px 5px 20px; margin-bottom:19px; position: absolute; left: 0px; text-align:left; bottom: 0px; border: none; overflow: auto; direction:rtl; Overflow-x:hidden; padding-left:20px; color:white; } </style> <script> var objDiv = document.getElementById("chattext"); objDiv.scrollTop = objDiv.scrollHeight; </script> <div id="chattext"> ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br>ahoj<br> </div> |
||
Chamurappi Profil |
#2 · Zasláno: 24. 5. 2013, 00:02:20
Reaguji na Fisaka:
Ty jsi těmi posuvníky posedlý :-) V uvedeném kódu nikde jQuery nepoužíváš. V objDiv není nic, protože element s id="chattext" v době spuštění skriptu neexistuje. Skript se spouští hned, jak ho HTML parser donačte.
|
||
Fisak Profil |
Chamurappi:
Omlouvám se ale pořád mi to nefunguje a chtěl bych tomu už jednou pro vždy přijít na kloub. A pokud tomu rozumím dobře tak tento JS stačí dát za ten div ? Když jsem dal JS za ten div tak se mi to posune do půlky.. A když ještě načtu pomocí jquery z jiné stránky kód tak to už vůbec nefunguje. <div id="chattext"> <span id='hframe'></span> </div> <script> $("#hframe").load("game/chat/chat_frame.php"); $("#chattext").scrollTop($("#chattext")[0].scrollHeight); </script> |
||
_es Profil |
Fisak:
„konzole mi opět píše Uncaught TypeError: Cannot read property 'scrollHeight' of undefined“ Áno, z rovnakého dôvodu, aký ti bol vysvetlený v [#2]. |
||
Fisak Profil |
#5 · Zasláno: 24. 5. 2013, 12:03:32 · Upravil/a: Fisak
_es:
Stále nevím co tam je špatně :-/ omlouvám se pokud mi to nedochází ale tohle jsem nikdy neřešil.. Aha poředil jsem to. Děkuji všem za rady.. pokud by někdo hledal řešení tak jsem ho našel zde: http://forum.jquery.com/topic/nano-scroller-ajax Ještě otázka. Mohu se zeptat proč mi tohle vždy rollne uplně dolu ale pak mi to odroluje do třičtvrtě divu: <script> $("#hframe").load("game/chat/chat_frame.php", function() { $("#chattext").scrollTop($("#chattext")[0].scrollHeight); }); </script> <script> $("#hframe").load("game/chat/chat_frame.php", function() { $("#chattext").scrollTop = 100000; }); </script> |
||
Fisak Profil |
#6 · Zasláno: 24. 5. 2013, 13:08:54 · Upravil/a: Fisak
Ještě zkouším toto:
var automatika = true; setInterval(function(){ $("#hframe").load("game/chat/chat_frame.php", function() { if (automatika) { $("#chattext").scrollTop($("#chattext")[0].scrollHeight); } firsttime = false; }); },1000); //chatovací okno bohužel to také nefunguje Dál jsem zkusil: <div id="chattext"> <span id='hframe'></span> </div> <script> $("#hframe").load("game/chat/chat_frame.php", function() { var timerID = setInterval(function(){ $("#chattext").scrollTop($("#chattext")[0].scrollHeight); }, 1000); },function(){ clearInterval(timerID); }); </script> u tohodle skriptu je problém že ten clearInterval nefunguje a tudíž se mi posuvník stále posouvá dolu místo aby se jednou posunul a už toho nechal.. Vyřešeno.. stačla poze podmínka: var automatika = true; setInterval(function(){ $("#hframe").load("game/chat/chat_frame.php", function() { if (automatika != false) { $("#chattext").scrollTop($("#chattext")[0].scrollHeight); } firsttime = false; }); },1000); //chatovací okno |
||
Časová prodleva: 11 let
|
0