我有一个包装 block (如侧边栏),里面有较小的 block 。我想让较小的 block 在单击时滚动到包装 block 的顶部(它看起来像一个标题)。
我已经尝试了很多东西但没有任何效果,我只是无法理解它必须如何工作的逻辑。
$(".second").click(function() {
$('.wrap').animate({
scrollTop: $(".second").offset().top
}, 'slow');
});
更新:我想我对问题的解释有误。也许这样:想象一长串联系人,当您单击某个联系人时,所有内容都会滚动,直到该联系人位于可见区域的顶部。
抱歉英语不好。
最佳答案
您需要确定元素在可滚动 div 中的位置并将其添加到当前 scrollTop 值:
scrollTop: $(e.currentTarget).position().top + $('.wrap').scrollTop()
关于javascript - 点击div内滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45441199/