Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ScrollHeight未使用JQuery在IE8中更新_Javascript_Jquery_Html_Scroll_Append - Fatal编程技术网

Javascript ScrollHeight未使用JQuery在IE8中更新

Javascript ScrollHeight未使用JQuery在IE8中更新,javascript,jquery,html,scroll,append,Javascript,Jquery,Html,Scroll,Append,我试图将一些文本(div)附加到可滚动的div中,然后自动滚动底部 出于某种原因,当我尝试在IE8中这样做时,它不起作用。取消对“警报”行的注释显示IE8为ScrollHeight属性返回两个值 Jquery附件是异步运行还是DOM需要时间刷新 正确的处理方法是什么 有问题的Html页面: 风格: .scrollbox { border-style: solid; overflow-y: scroll; padding: 5px; margin: 20px; bor

我试图将一些文本(div)附加到可滚动的div中,然后自动滚动底部

出于某种原因,当我尝试在IE8中这样做时,它不起作用。取消对“警报”行的注释显示IE8为ScrollHeight属性返回两个值

Jquery附件是异步运行还是DOM需要时间刷新

正确的处理方法是什么

有问题的Html页面:

风格:

.scrollbox
{
   border-style: solid;
   overflow-y: scroll;
   padding: 5px;
   margin: 20px;
   border-color: #C0C0C0;
   height: 400px;
   width: 500px;
   font-family: "Times New Roman", Times, serif;
   font-size: 20px;
   color: #333333;
}
Jquery脚本:

$(document).ready(function() {
    var node = $("#list");
    for (i = 1; i <= 100; i++) {
        node.append("<div>Item :" + i + "</div>");
    }
    //alert(node.attr("scrollHeight"));
    //alert(node.attr("scrollHeight"));
    node.animate({ scrollTop: node.attr("scrollHeight") }, 500);
});
$(文档).ready(函数(){
变量节点=$(“#列表”);

对于(i=1;i您是否尝试过使用
node.outerHeight()
而不是获取scrollHeight的值?

尝试使用jQuery的innerHeight()值,并且我相信您需要“px”和该值

node.animate({ scrollTop: node.innerHeight() + 'px' }, 500);

我也遇到了这个问题-对我来说,这似乎是IE8中的一个缺陷(兼容模式没有表现出相同的行为)。在我的例子中,我只读取一次值来“初始化”它并忽略结果,然后后续的读取是正确的。不理想,但似乎工作正常。

node.outerHeight()和node.innerHeight()(带和不带“px”)似乎没有解决这个问题。有人可以复制这个问题吗?我在两台计算机(XP:IE8和Vista:IE8)上得到的结果好坏参半。
node.animate({ scrollTop: node.innerHeight() + 'px' }, 500);