automatisches scrollen bei langer Ausgabe
RuD
- javascript
Seid gegrüßt!
Ich habe jetz mal ne Sache, die mich seit längerem beschäftigt.
Ich schreibe in letzter Zeit PHP-Scripte, die nur meiner Kontrolle dienen und wirlkich ne Menge an Ausgaben fabriziert, nennen wir's mal "Log".
Jetzt hätte ich gern dass die Seite "automatisch" bei jeder neuen Zeile nach unten scrollt. Ein JavaScript, mit <body onLoad=""> scheidet da ja aus, weil eben onload. Hat jemdand ne Idee?
Jetzt hätte ich gern dass die Seite "automatisch" bei jeder neuen Zeile nach unten scrollt. Ein JavaScript, mit <body onLoad=""> scheidet da ja aus, weil eben onload. Hat jemdand ne Idee?
Eine sinnlose Funktion.
Eine neue Zeile kann während des Ladens ja nur unten erscheinen, und dann willst du jedes Mal nach unten scrollen?
Das geht wohl mit negativen Werten, dann beginnt deine Seite also mit ebensovielen Leerzeilen wie du Zeilen hast.
Was soll das?
Kalle
Seid gegrüßt!
Das geht wohl mit negativen Werten, dann beginnt deine Seite also mit ebensovielen Leerzeilen wie du Zeilen hast.
Das kann ich nicht nachvollziehen.
Was soll das?
Zum Beispiel eine "aktuell scollende" Log-Anzeige realisieren.
Das geht wohl mit negativen Werten, dann beginnt deine Seite also mit ebensovielen Leerzeilen wie du Zeilen hast.
Das kann ich nicht nachvollziehen.
Eine HTML- Seite beginnt üblicherweise oben am Bildschirmrand, nicht unten. Wenn du nun bei jeder neuen Zeile _nach unten_ scrollst, rutscht die erste Zeile also jedesmal eine Zeile nach unten und darüber steht :nichts_, also Leerzeilen.
Was soll das?
Zum Beispiel eine "aktuell scollende" Log-Anzeige realisieren.
Der neueste Eintrag ist oben oder unten?
Falls unten, musst du Seite _nach oben_ scrollen, um die letzte Zeile in den sichrbaren Bereich zu bringen.
Wir sollten uns erstmal einig sein, wo oben und wo unten ist, und was die Scrollrichtung betrifft.
Kannst du das nochmal mit anderen Worten beschreiben?
Kalle
hi,
Wir sollten uns erstmal einig sein, wo oben und wo unten ist, und was die Scrollrichtung betrifft.
Ja, das wäre wohl von Vorteil :-)
Unter "nach unten Scrollen" dürfte man im allgemeinen Sprachgebrauch aber durchaus verstehen, dass man so scrollt, dass das, was weiter unten auf der Seite steht, nach oben wandert.
Du ziehst den Schieber auf dem Scrollbalken nach unten, du drehst dein Mausrad "nach unten" (zu dir hin) - es wird nach unten gescrollt.
Eine HTML- Seite beginnt üblicherweise oben am Bildschirmrand, nicht unten. Wenn du nun bei jeder neuen Zeile _nach unten_ scrollst, rutscht die erste Zeile also jedesmal eine Zeile nach unten und darüber steht :nichts_, also Leerzeilen.
Deine Definition scheint aber irgendwie andersherum zu lauten.
Falls unten, musst du Seite _nach oben_ scrollen, um die letzte Zeile in den sichrbaren Bereich zu bringen.
Eigenartige Betrachtungsweise - m.E. unüblich.
gruß,
wahsaga
hi,
Ich schreibe in letzter Zeit PHP-Scripte, die nur meiner Kontrolle dienen und wirlkich ne Menge an Ausgaben fabriziert, nennen wir's mal "Log".
Jetzt hätte ich gern dass die Seite "automatisch" bei jeder neuen Zeile nach unten scrollt.
Wie kommt denn eine "neue Zeile" zustande?
Wenn du nur PHP verwendest, und nicht zusätzliche Daten clientseitig nachlädst, dann ja wohl durch neu Laden des Dokumentes.
Dann setz' doch einfach unten einen Anker hin, und rufe die Ressource so auf, dass dieser angesprungen wird.
Ein JavaScript, mit <body onLoad=""> scheidet da ja aus, weil eben onload.
Wieso scheidet das aus?
_Frühestens dann_, wenn onload gefeuert hat, ist doch normalerweise klar, wo "ganz unten" eigentlich ist.
gruß,
wahsaga
Seid gegrüßt!
Wie kommt denn eine "neue Zeile" zustande?
Über PHP nicht mit reload sondern über "geflushte" Ausgaben.
Also z.B. Zeile aus Datenbank holen, Zeile Formatieren, echo $zeile."<br>\n";
Und ich weis nicht unbedingt wie land das Dokument am Ende wird.
Dann setz' doch einfach unten einen Anker hin, und rufe die Ressource so auf, dass dieser angesprungen wird.
Wäre bei einem neuladen logisch, aber, wie gesagt ich müsse im prinzip dynamisch den Anker "verschieben", und bei jedem verschieben, diesen wieder anspringen. Das kling für mich schlecht realisierbar.
Ein JavaScript, mit <body onLoad=""> scheidet da ja aus, weil eben onload.
Wieso scheidet das aus?
_Frühestens dann_, wenn onload gefeuert hat, ist doch normalerweise klar, wo "ganz unten" eigentlich ist.
Ja eben, aber ein "ganz unten", ist der letzte Zustand. Ich benötige aber eingentlich ein "im Moment ganz unten".
hi,
Wie kommt denn eine "neue Zeile" zustande?
Über PHP nicht mit reload sondern über "geflushte" Ausgaben.
Also z.B. Zeile aus Datenbank holen, Zeile Formatieren, echo $zeile."<br>\n";
Und ich weis nicht unbedingt wie land das Dokument am Ende wird.
Dann sehe ich keine vernünftige Möglichkeit, das zu realisieren.
Höchstens ein Javascript-Interval, welches immer wieder "ganz nach unten", also so weit wie aktuell möglich, srcollen lässt, wäre denkbar.
gruß,
wahsaga
Hallo RuD.
Wie kommt denn eine "neue Zeile" zustande?
Über PHP nicht mit reload sondern über "geflushte" Ausgaben.
Hier bietet sich AJAX an, womit du dies recht komfortabel lösen könntest. Dann könntest du die Ausgabe z. B. auch in eine Textare leiten, wo du ja beeinflussen kannst, wo neue Zeilen erscheinen.
Einen schönen Montag noch.
Gruß, Mathias
Hi,
Über PHP nicht mit reload sondern über "geflushte" Ausgaben.
Ich flushe dann immer ein '<script>window.scrollTo(0,999999)</script>' mit.
Gruß, Cybaer
Seid gegrüßt!
Ich flushe dann immer ein '<script>window.scrollTo(0,999999)</script>' mit.
Ich stand auf der Leitung. Das genau ist es. Ich danke dir!
TsTs so einfach, muss man erstmal drauf kommen ;-)
hi,
Ich flushe dann immer ein '<script>window.scrollTo(0,999999)</script>' mit.
Ich stand auf der Leitung. Das genau ist es.
Und das soll wirklich günstiger sein, als diese Funktionalität einfach in einem Intervall aufrufen zu lassen ...?
gruß,
wahsaga
hi,
Und das soll wirklich günstiger sein, als diese Funktionalität einfach in einem Intervall aufrufen zu lassen ...?
Gut, ja - es wäre dann günstiger, wenn man zwischendurch selber woanders hinscorllen können möchte, ohne das es dann gleich darauf zurückhoppst - aber das dürfte bei einem automatischen Reload ja auch wieder uninteressant sein.
gruß,
wahsaga