首页  >  文章  >  web前端  >  单击可滚动 Div 内的元素时如何防止滚动整个页面?

单击可滚动 Div 内的元素时如何防止滚动整个页面?

Susan Sarandon
Susan Sarandon原创
2024-10-26 15:41:30855浏览

How to Prevent Scrolling the Entire Page When Clicking an Element Inside a Scrollable Div?

如何在可滚动 Div 中滚动

单击滚动 div 中的元素时,您可能会遇到整个页面都显示的问题滚动而不只是 div。要解决此问题,请利用以下步骤:

  1. 计算所需元素相对于其父 div 的垂直偏移:
<code class="javascript">var myElement = document.getElementById('element_within_div');
var topPos = myElement.offsetTop;</code>
  1. 利用scrollTop将 div 滚动到指定位置:
<code class="javascript">document.getElementById('scrolling_div').scrollTop = topPos;</code>

或者,对于原型 JS 实现:

<code class="javascript">var posArray = $('element_within_div').positionedOffset();
$('scrolling_div').scrollTop = posArray[1];</code>

此方法可确保 div 滚动以在以下位置显示所需的元素顶部或尽可能向下(如果默认情况下不可见)。

以上是单击可滚动 Div 内的元素时如何防止滚动整个页面?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn