我有一个<div>
overflow:auto
。此<div>
包含带有搜索栏的<form>
。
我正以相同的形式显示提取的记录,现在我只需将<div>
(我的搜索结果开始显示)滚动到其容器<div>
的顶部(而不是顶部)页面)。
检查创建的jsfiddle。 http://jsfiddle.net/tusharjs/wGUE2/15/
在这里,我尝试了一种我在stackoverflow上找到的解决方案,但它将所需的<div id="scrollto">
滚动到页面顶部而不是<div id="maincontent">
的顶部。
由于
答案 0 :(得分:6)
您应该使用.offset()
方法获取元素的实际顶部,并从要滚动的数量中减去该值。
$(document).ready( function(){
var elem = $('#scrollto');
if(elem)
{
var main = $("#maincontent"),
t = main.offset().top;
main.scrollTop(elem.offset().top - t);
}
});
为卷轴设置动画可能会更令人印象深刻:
main.animate({scrollTop: elem.offset().top - t}, 500);
上面的第二个参数是持续时间(以毫秒为单位)。更新的示例为here。