我有一个div元素,overflow-y
设置为auto
。现在我有一大堆带有highlight1
类的元素。我希望使用class
作为highlight1
来回滚动元素。
由于某种原因,jquery scrollTo
无法正常工作。这是我尝试使用的语法:
$('#highlightDiv').animate({
scrollTop: $("#"+elementId).offset().top + 'px'
}, 'fast');
以下是我要完成的Jsfiddle。有人可以解释为什么滚动没有移动到适当的元素。
答案 0 :(得分:6)
我的答案很简单你的脚本不知道你正在滚动的div的滚动高度和位置你应该为它添加两个值,它应该可以工作
函数 scrollToNextHighlight()中的scrollTop应如下所示
scrollTop: ($('#highlightDiv').scrollTop() -
$('#highlightDiv').offset().top)
+ $("#"+elementId).offset().top + 'px'
然后它应该工作