Moin,
Ich weis nicht, ob diese Frage im falschen treat ist, aber ich wüsste nicht, wo ich sie sonst hinschreiben söllte.
Ich habe so was ähnliches wie einen Chat geschrieben. Doch bleibt der Scrolbalken von dem Fenster immer oben, wenn so viele einträge da sind, das das Fenster zu klein wird. Gibt es eine Möglichkeit mit php, Javascript oder css das dieser balken unten bleibt und mit dem Text mitfährt?
Der code :
[php]
<?php
echo "$console"
echo "
"; [/php]Der Style dazu:
[html].console {
width:700px;
height:400px;
overflow-y:scroll;
border:solid 2px #C0C0C0;
background-color:#000000;
color: #FFFFFF;
font-size:80%;
font-style:italic;
text-align:left;
}[/html]
Natürlich währe es einfacher den Textt nach oben laufen zu lassen, doch es sieht besser aus wenn er nach unten läuft.
Vielen dank im voraus… ^^
system
13. März 2007 um 12:42
2
Hm, du könntest den Chat ja mit nem Anker aufrufen, und jeder neue Eintrag bekommt den Anker verpasst. (der alte muss nat. gelöscht werden)
Weiß nicht ob das klappt, wäre aber ein Ansatz.
DAs gehört in die JS section:
und so würde es mit js gehn
[html]
function unten(){
document.getElementById(‚chat_box‘).scrollTop = document.getElementById(‚chat_box‘).scrollHeight - document.getElementById(‚chat_box‘).offsetHeight;
}
[/html]
der div muss dann halt die id von chat_box haeb
Frank
13. März 2007 um 12:47
4
Probier mal das
Javascript
window.ScrollTo(0,1000);
Edit1
shit zu lahm :), ich geb zu, meine Lösung ist auch nicht so schön
Edit2
Hab das mal in JavaScript verschoben
@T-sneak :
Okay, wenn ich dich richtig verstanden habe meinst du:
[php]
<?php
echo "$console"
echo "
";
[/php]Das funktioniert so nicht, ich bekomme keine Fehlermeldung aber scrolen macht er auch nicht.
Achtung!: Ich bin totaler JS NOOB, bin bis jetzt auch immer ohne ausgekommen :razz:
jo kann ja auch nicht gehn weil du lädst die funktion unten()
gar nicht
[html]
[/html]
und wenn du das wiederhollen willst kannst du ja ein intervall von 1 Sek. setzten
Frank
13. März 2007 um 13:24
7
onLoad = „“ wird bei den meisten Browsern nur im Body-Tag unterstützt.
Das Divfenster ist bei mir auch im Bodytack doch irgendwie frist er es einfach nicht. Habe um es mir einfach zu machen mal eine Datei Includiert, damit ich nicht immer tippen muss um zu gucken ob es funst…
[php]
<?php
include("$datafile");
echo "
";
echo "";
echo "" ?>
[/php]
bei meinem chat funkts
und den Hab ich in folgenden Browser getestet:
Firefox, IE 6+7, Opera, Safari
bzw. wenns nicht geht dann setzt in den JS teil noch das hier:
[html]
setInterval(„unten()“,1000);
[/html]
Okay, entweder ist mein Firefox zu blöd oder ich^^
Hier ist der Link http://nightmaresh.ni.funpic.de/test2/index.php
vielleicht findest du im Quellcode den Fehler. Nen Komentar schreiben geht noch nicht, so weit bin ich bis jetzt noch nicht…
Frank
13. März 2007 um 14:13
11
Ich bekomme da folgenden fehler
[ATTACH]183.vB[/ATTACH]
system
13. März 2007 um 14:28
12
also im FF erhalte ich keine Nachricht und im IE auch nicht.
Komisch
MfG, matibaski
Naaa ganz toll…
Als kämpfer gegen das Böse habe ich jetzt schon fast ein Jahr Linux auf meinem Rechner und kann daher nicht sehen, was der IE macht.
Soweit ersteinmal Danke^^
Da die Datei aber grade mal knapp 37 Zeilen lang ist, kann das nicht sooo ganz stimmen^^
war mal wieder zu lahm^^
system
13. März 2007 um 14:29
14
Du musst den text dazurechnen.
Pro Zeile benutzt er eine Zeile.
Im Quelltext hast du sicherlich genug Zeilen.
MfG, matibaski
Okay, also nachdem ich die eine datei mal in die Index kopiert habe musste ich feststellen, das diese Inteligenzbremse von Internetexplorer allen ernstens meint,
Warum geht das nicht<br>
sei falsch^^
setzt halt das intervall mal rein was ich en paar posts vorher geschrieben hab ?!
bzw. ich seh gerade das du es gesetzt hast
aber in der funktion…
das hat ja überhaupt keinen sinn ?
das muss auserhalb von der funktion
edit:/ Hab dir hier mal schnell das ding hochgeladen
http://index.jonas-design.net/scroll.htm
Verdammt, es funst^^
@T-sneak
Vielen vielen Dank für deine schnelle Hilfe, er scrolt zwar mit meinem Stylesheed
nur bis zum vorletzten Eintrag aber das macht nichts, weil ich eh immer leehre Spallten zwischen den Texten lasse…
So ist doch mein Ausflug ins Javascript (mit verdammt viel hilfe ^^) doch noch was geworden