0

我正在使用以下命令运行命令并在执行时输出它的数据。

$a = popen('command to run...', 'r');

while($b = fgets($a, 2048)) {
    echo "$b<br/>";
    ob_flush();flush();
}

这工作正常,但我希望我的页面在每次新行回显到屏幕时向下滚动。

知道我该怎么做吗?

谢谢

4

3 回答 3

1

你必须使用:

$a = popen('command to run...', 'r');

while($b = fgets($a, 2048)) {
    echo "$b<br/>";
    echo "<script>
          setTimeout(function() { 
                      var scrollBottom = $(window).scrollTop() + $(window).height();
                      $(window).scrollTop(scrollBottom);}
                    ,100);
          </script>";
    ob_flush();
    flush();
}

希望这有帮助

于 2013-08-13T11:23:55.953 回答
0

不知道你是如何更新页面的,但对于滚动,你可以这样做:

$('html, body').animate({
        scrollTop: $("#elementtoScrollToID").offset().top
}, 2000);

其中elementtoScrollToID是页面上添加的新元素的 ID。

于 2013-08-13T11:09:16.503 回答
0

它会很脏,但你可以试试这个:

$a = popen('command to run...', 'r');

while($b = fgets($a, 2048)) {
    echo "$b<br/>";
    echo "<script>
          $('body').animate({
              'scrollTop': $(document).height()
          }); 
          </script>";
    ob_flush();
    flush();
}
于 2013-08-13T11:15:16.907 回答