jquery scrollto 不滚动到正确的元素

jquery scrollto not scrolling to correct element

我有一个 div 元素,其中 overflow-y 设置为 auto。现在我有一堆 class 作为 highlight1 的元素。我想在 class 作为 highlight1.

的元素上来回滚动

由于某些原因 jquery scrollTo 无法正常工作。这是我尝试使用的语法:

$('#highlightDiv').animate({
     scrollTop: $("#"+elementId).offset().top + 'px'
}, 'fast');

这是我要完成的 Jsfiddle。有人可以解释为什么滚动没有移动到正确的元素吗?

我有一个简单的回答你的脚本不知道你正在滚动的 div 的滚动高度和位置你应该向它添加两个值并且它应该工作

函数 scrollToNextHighlight() 中的 scrollTop 应该如下所示

scrollTop: ($('#highlightDiv').scrollTop() - 
$('#highlightDiv').offset().top)
+ $("#"+elementId).offset().top + 'px'

然后它应该工作