我无法通过溢出获取#div:滚动到动画并向下滚动到Safari 7.0.3中div中的特定部分。
它在FF,Opera,Chrome中运行得很好,但由于某些原因我无法在Safari中使用它?有谁知道我为什么以及如何解决这个问题? 我已经尝试将#menuContainer设置为相对定位,但它的工作原理却非常糟糕。它有时会起作用,有时则会失败。
CSS
#menu{
position:absolute;
display: block;
right: 0;
}
#menuContainer{
position:absolute;
overflow: scroll;
width: 350px;
right: 0;
}
HTML
<div id="menu">
<div id="menuContainer">
<ul>
<li></li>
<li></li>
<li>.....
<ul>
</div>
</div>
的jQuery
$("#menuContainer").animate({scrollTop: $("li:nth-child("+varJumpTo+")").offset().top}, 500);
答案 0 :(得分:0)
好的,我找到了解决方案。
似乎在Safari中,加载所有内容后,最好是.animate()scollTop。所以在jQuery周围添加这个:
$(window).load(function(){
$("#menuContainer").animate({scrollTop: $("li:nth-child("+varJumpTo+")").offset().top}, 500);
});
因为在我们计算div offset()的top()位置之前需要加载列表中的所有内容,所以它表现得很糟糕。
谢谢!我希望这有助于其他人:D