Javascript 或 html - 滚动到 div 内部可滚动 div
Javascript or html - scroll to a div inside scrollable div
我有一个可滚动的 div (800px x 400px)。里面小了 500 divs (100px x 80px),所以它是一个长的可滚动的。每个较小的 div 都有一个 ID。我想在按下按钮时滚动到特定的 div。
我试过一些像
$("#outerDiv").scrollTop() = $("#innerDiv").scrollTop();
但我完全不知道 scrollTop 是否是正确的方法? (而且我知道我没有正确使用它)
在 javascript(首选)或简单的 html 中是否有任何直观的方法来做到这一点?
您需要将外div的scrollTop()
设置为内div
的position().top
。另外,您设置 scrollTop
的语法有点不对劲。试试这个:
$("#outerDiv").scrollTop($("#innerDiv").position().top);
您不能将方法的 return 值分配给其他东西。右值无法评估。
$("#outerDiv").scrollTop() = something
错了
您想要的应该可以通过将封闭容器的 scrollTop
设置为子元素相对于父元素的偏移量来实现。
$("#outerDiv").scrollTop($("#innerDiv").position().top);
使用Javascript
document.getElementById('outerDiv').scrollTop = document.getElementById('innerDiv').offsetTop;
滚动到顶部
如果要滚动元素的内容,请使用 scrollLeft 和 scrollTop 属性 - Link
偏移顶部
HTMLElement.offsetTop 只读 属性 returns 当前元素相对于offsetParent节点顶部的距离。 MDN -Link
我有一个可滚动的 div (800px x 400px)。里面小了 500 divs (100px x 80px),所以它是一个长的可滚动的。每个较小的 div 都有一个 ID。我想在按下按钮时滚动到特定的 div。
我试过一些像
$("#outerDiv").scrollTop() = $("#innerDiv").scrollTop();
但我完全不知道 scrollTop 是否是正确的方法? (而且我知道我没有正确使用它)
在 javascript(首选)或简单的 html 中是否有任何直观的方法来做到这一点?
您需要将外div的scrollTop()
设置为内div
的position().top
。另外,您设置 scrollTop
的语法有点不对劲。试试这个:
$("#outerDiv").scrollTop($("#innerDiv").position().top);
您不能将方法的 return 值分配给其他东西。右值无法评估。
$("#outerDiv").scrollTop() = something
错了您想要的应该可以通过将封闭容器的
scrollTop
设置为子元素相对于父元素的偏移量来实现。$("#outerDiv").scrollTop($("#innerDiv").position().top);
使用Javascript
document.getElementById('outerDiv').scrollTop = document.getElementById('innerDiv').offsetTop;
滚动到顶部 如果要滚动元素的内容,请使用 scrollLeft 和 scrollTop 属性 - Link
偏移顶部 HTMLElement.offsetTop 只读 属性 returns 当前元素相对于offsetParent节点顶部的距离。 MDN -Link