Php 保持Div滚动到底部

Php 保持Div滚动到底部,php,jquery,html,scroll,Php,Jquery,Html,Scroll,我知道有很多关于这方面的问题被问到,但我没有看到一个与我的要求相同的问题 我有一个div,通过调用外部页面,然后将结果实时写入div,将数据添加到该div中。使用以下方法可以很好地工作: <div id='test'> $x = popen("php test.php", 'r'); while($y = fgets($x, 512)) { echo "$y<br>"; ob_flush();flush(); } pclose($x); </d

我知道有很多关于这方面的问题被问到,但我没有看到一个与我的要求相同的问题

我有一个
div
,通过调用外部页面,然后将结果实时写入div,将数据添加到该div中。使用以下方法可以很好地工作:

<div id='test'>

$x = popen("php test.php", 'r');

while($y = fgets($x, 512)) {
    echo "$y<br>";
    ob_flush();flush();
}
pclose($x);

</div>
但我觉得有一个更好的方法可以做到这一点,然后继续重复剧本

有人能建议如何将div滚动到底部吗

有没有办法绑定一个事件,该事件检测到div上的内容更改,然后滚动到底部,而不必反复回显相同的代码

谢谢

引用为副本的票证正在讨论滚动到div底部,而不是在更新时如何滚动到div底部。

您可以使用jQuery:

如果通过ajax
$(document).on()检索数据

资料来源:

domsubtreemedited
未在IE上运行


编辑:添加了“IE支持的属性更改”。

我编辑了我的答案。首先,我没有正确阅读你的问题。只需从php中删除此echo,并在进行ajax调用的文件中使用它。将该行放在ajax调用的成功部分,就在您更新列表的那一行(更新数据的div)之后。

谢谢您的帮助,有没有跨浏览器执行此操作的方法?已编辑的答案。这应该在ie中工作(现在无法测试)谢谢-只是在Chrome中尝试了一下,但没有工作。数据被添加到div中,但不会滚动到底部。您是否通过ajax请求检索数据?如果是这样,请使用
$(document).on(“domsubtreemeditedpropertychange”,“.box”,function(){})谢谢,这和我的不一样吗?好的!请告诉我数据是通过ajax还是页面刷新获取的?@Tom您是通过ajax获取数据的,每次更新时都会回显您的数据和此脚本行。“是吗?”汤姆,我改变了答案
echo "<script>var objDiv = document.getElementById(\"test\");objDiv.scrollTop = objDiv.scrollHeight;</script>";
$('.box').bind("DOMSubtreeModified propertychange", function(e) {
    $(this).animate({ scrollTop: $(this).prop("scrollHeight") }, 100);
});
$(document).on("DOMSubtreeModified propertychange", ".box", function(e) {
        $(this).animate({ scrollTop: $(this).prop("scrollHeight") }, 100);
});