eky7979
Goto Top

nachladende Seite im IFRAME automatisch nach unten scrollen

Hi,
auf einer Seite habe ich ein IFRAME eingebunden, in welchem die Nutzer einen Datenbankprozess starten können, der mehrere Minuten andauert. Währenddessen werden aber immer und immer wieder die aktuellen Bearbeitungsschritte angezeigt und so füllt sich das IFRAME auf mehrere Seiten an. Die Höhe des IFRAMES ist aber auf eine Browserhöhe beschränkt, so dass man dann in dem Frame skrollen muss.
Wie ist es nun möglich, dass das IFRAME immer ganz nach unten skrollt, so dass nun auch nach der letzten Statusmeldung die letzten Zeilen zu sehen sind.

(Oder gibt es noch eine andere sinnvolle Möglichkein?)

gruß
eky7979

Content-Key: 118851

Url: https://administrator.de/contentid/118851

Printed on: April 19, 2024 at 05:04 o'clock

Member: RoterFruchtZwerg
RoterFruchtZwerg Jun 23, 2009 at 13:50:26 (UTC)
Goto Top
z.B. mit JavaScript
function scrollBottom() { window.scroll(1, 500000); window.setTimeout("scrollBottom()", 500);}scrollBottom();
Member: Fritzchen
Fritzchen Jun 23, 2009 at 17:54:56 (UTC)
Goto Top
Hallo.

Hm. Gegenfrage.
Wieso drehst du das ganze nicht um und zeigst die neuesten Statusmeldungen nicht oben an?

Tschau Fritzchen
Member: eky7979
eky7979 Jun 30, 2009 at 08:02:54 (UTC)
Goto Top
Jetzt ist das aber so, dass das IFRAME zwar ganz nach unten scrollt, aber wenn man per Hand den Text im Frame nach oben scrollen will, geht die Seite immer wieder automatisch nach unten. Kann man das verhindern?

gruß
eky7979
Member: titusc
titusc Dec 31, 2009 at 10:47:08 (UTC)
Goto Top
Hallo eky7979

arbeitest du mit php? Dann kannst du nämlich in deinem PHP-skript folgendes machen.
Ganz am Anfang

ob_implicit_flush();
function echox($string){
	echo($string."\n");  
	echo("<script language='javascript'>window.scroll(1, 500000);</script>\n");  
}

Und dann einfach deine echo's mit echox ersetzen (du wirst auch keine flushes mehr brauchen wegen ob_implicit_flush()).

lg, titusc
Member: davidquist
davidquist Jul 01, 2010 at 13:02:22 (UTC)
Goto Top
Hallo eky7979,

nachfolgend erhälst du eine verbesserte Javascript Version damit man auch noch Scrollen kann, sofern sich die Grösse des IFrames nicht verändert! face-smile

Gruss,
David

 
<pre>
  <script type="text/javascript">  
    <!--
      function scrollToBottom(previous_bottom){  
        current_bottom = document.body.scrollHeight;
        if(current_bottom > previous_bottom){
          window.scroll(0, current_bottom); 
        }
        setTimeout("scrollToBottom(" + current_bottom + ")", 40);  
      }
      scrollToBottom(600);
    //-->
  </script>
<?php

    system("ssh -o 'batchmode yes'  <username>@<hostname> '. ./.profile >/dev/null; <command>");  

echo "</pre>";  

?>