jq \ js控制页面滚动到指定位置

序言:

        应用场景:当出现多条数据,希望通过事件控制滚动条到指定位置。

        在JavaScript中,如果你想要控制滚动条到列表中特定条目的位置,你可以使用scrollTop属性。这个属性可以设置或获取元素的滚动条垂直位置。

知识点:

1. document.getElementById()
 document.getElementById() 是一个JavaScript方法,用于通过给定的id值来获取HTML文档中具有该id的元素。这个方法返回的是与指定id匹配的第一个元素的引用。如果没有找到匹配的元素,则返回null。这个方法特别适用于当元素的ID在文档中是唯一的情况下.

2.document.getElementsByClassName()

返回一个类似数组的对象,包含了所有指定 class 名称的子元素。当调用发生在document对象上时, 整个DOM都会被搜索, 包含根节点。你也可以在任意元素上调用getElementsByClassName() 方法,它将返回的是以当前元素为根节点,所有指定class名称的子元素。

3.scrollTop

scrollTop是JavaScript中一个非常有用且重要的方法,它用于获取或设置元素的垂直滚动条位置.

HTML:

<div id="interlocution" style="height: 200px; overflow: auto;">
  <div class="qADetails">数据1</div>
  <div class="qADetails">数据2</div>
  <div class="qADetails">数据3</div>
  <!-- ... 更多数据 ... -->
</div>

JS:

positioningScrolling(item,idx){
      const list  = document.getElementById('interlocution');
      //获取某标签下所有子标签
      const listItems = list.getElementsByClassName('qADetails'); 
 
      // 假设你想要滚动到第二条数据
      const index = 1; // 第二条数据的索引是1,因为索引是从0开始的
      const listItem = listItems[index];

      // 计算该数据项相对于列表顶部的位置
      const scrollTopPosition = listItem.offsetTop - list.offsetTop;
      // 滚动到该位置
      list.scrollTop = scrollTopPosition;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值