• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Scrolbalken automatisch nach unten

Status
Für weitere Antworten geschlossen.

Nightmare

Neues Mitglied
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:
<div class="console">
      <?php 
       echo "$console"
echo "</div>";
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;    
}

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.. ^^
 
Werbung:
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;
	
}

der div muss dann halt die id von chat_box haeb ;)
 
Werbung:
Probier mal das
Javascript
Code:
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:
<script type='text/javascript'>
function unten(){
document.getElementById('chat_box').scrollTop = document.getElementById('chat_box').scrollHeight - document.getElementById('chat_box').offsetHeight;
}
</script>
 <div class="console" id="chat_box">
      <?php 
       echo "$console"
echo "</div>";
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:
<div id="chat_box" class="console" onload="unten()">

und wenn du das wiederhollen willst kannst du ja ein intervall von 1 Sek. setzten ;)
 
Werbung:
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:
<script type='text/javascript'>
function unten(){
document.getElementById('chat_box').scrollTop = document.getElementById('chat_box').scrollHeight - document.getElementById('chat_box').offsetHeight;
}
</script>
        <div id="chat_box" class="console" onload="unten()">
            <?php 
            include("$datafile");
      echo "</div>";        
        echo "<form action=\"console\" method=\"POST\">";
        echo "<input type=\"hidden\" name=\"folder\" value=\"$folder\">" ?>
            <input type="text" name="send" size="90%">        
        <input type="submit" value="send..."></form>
 
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);
 
Werbung:
also im FF erhalte ich keine Nachricht und im IE auch nicht.
Komisch ;)


MfG, matibaski
 
Werbung:
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^^
 
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,

Code:
Warum geht das nicht<br>

sei falsch^^
 
Werbung:
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
 
Zuletzt bearbeitet:
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
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben