Frame nach unten scrollen

emptynick

Erfahrenes Mitglied
Hallo,

ich bin momentan dabei mit Ajax einen Chat zu basteln.
In einem IFrame werden die Nachrichten geladen und in ein div geladen.
Nun muss das IFrame aber immer ganz nach unten gescrollt werden.
Doch es hilft kein Anker und auch kein ScrollTo(), da das div anscheinend ja doch ganz schön klein ist, da AJAX es ja reinlädt und es nicht statisch da rein geschrieben wird.

Fällt da jemandem ein Lösungsansatz ein?

Vielen Dank und liebe Grüße
Christoph Schweppe
 
Nimm mal die getElementById()-Methode anstelle des all-Objekts:

Code:
function scrollbottom() {
  document.getElementById("bottom").scrollIntoView(false);
}
und notier das Element mit der ID #bottom mit einem geschützten Leerzeichen " " am unteren Ende innerhalb des DIVs #view_ajax, sofern darin gescrollt werden soll.

mfg Maik
 
Ich hab das ganze #bottom Teil mal rausgenommen und das JS einfach an das Ende des #view_ajax gesetzt. Geht wunderbar, danke :)

Hab doch noch ein Problem ;
Natürlich soll das ganze automatisch nach unten gescrollt werden.
mit window.setTimeout wäre es ja eigentlich möglich, klappt aber nicht.
Hat da einer eine Idee?
 
Zuletzt bearbeitet:
Ich hab das ganze #bottom Teil mal rausgenommen und das JS einfach an das Ende des #view_ajax gesetzt. Geht wunderbar, danke :)
So müssten die Browser aber nun einen Fehler beim Scriptaufruf melden :suspekt:

Firefox hat gesagt.:
Fehler: document.getElementById("bottom") has no properties
IE hat gesagt.:
document.getElementById(...) ist Null oder kein Objekt

//EDIT

Hab doch noch ein Problem ;
Natürlich soll das ganze automatisch nach unten gescrollt werden.
mit window.setTimeout wäre es ja eigentlich möglich, klappt aber nicht.
Hat da einer eine Idee?
Code:
function scrollbottom() {
  document.getElementById("bottom").scrollIntoView(false);
}

window.onload = function(){
scrollbottom();
}
Code:
function scrollbottom() {
  document.getElementById("bottom").scrollIntoView(false);
}

window.setTimeout("scrollbottom()", 3000);
funktioniert bei mir beides einwandfrei - vorausgesetzt, dass das Dokument auch ein Element mit der ID #bottom enthält.

mfg Maik
 
onload geht nicht, bei klick gehts
Klar, wenn du im Quellcode anschliessend mit dem onload-Event im <body>-Tag eine andere Script-Funktion aufrufst.

Außerdem landet man in den Gecko-Browsern (Firefox, Mozilla, Netscape, SeaMonkey) beim Klick auf den Link nicht am unteren Ende, sondern lediglich eine Zeile tiefer, was wohl mit deiner untypischen Anwendung der scrollIntoView()-Methode zusammenhängen dürfte.

mfg Maik
 

Neue Beiträge

Zurück