使用scrollTo滚动到文档中的某个坐标。

效果演示

语法

window.scrollTo(x-coord,y-coord ) 
// x-coord 是文档中的横轴坐标,y-coord 是文档中的纵轴坐标。

window.scrollTo(options)
// options 是一个包含三个属性的对象:
// top 等同于  y-coord
// left 等同于  x-coord
// behavior  类型 String,表示滚动行为,支持参数 smooth(平滑滚动),instant(瞬间滚动),默认值 auto

 演示代码

<style>
      * {
        margin: 0;
        padding: 0;
      }
      body {
        padding: 20px;
      }
      ul {
        overflow-y: scroll;
        border: 1px solid black;
        width: 100px;
        height: 100px;
      }
      li {
        list-style: none;
        word-break: break-all;
      }
    </style>
  </head>
  <body>
    <ul class="boxF">
      <li class="boxCh">
        1111111111111111111111111111111111111111111111111111111111111111111111
      </li>
      <li class="boxCh2">
        1234567890123456789012345678901234567890123456789012345678901234567890
      </li>
    </ul>
    <button class="btn">按钮</button>
    <script>
      const boxF = document.querySelector('.boxF')
      const boxCh = document.querySelector('.boxCh')
      document.querySelector('.btn').addEventListener('click', function () {
        const boxChCon = boxCh.scrollHeight // 获取第一个子元素的高度
        console.log(boxChCon) // 第一个子元素(boxCh)的高
        // 设置平滑滚动使视口滚动到第二个子元素的位置
        boxF.scrollTo({
          top: boxChCon,
          behavior: 'smooth'
        })
      })
    </script>
  </body>

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值