【滚轮滚到某处触发事件】判断窗口滚轮滚动的位置

 scrollToTop() {
    // 获取视窗高度
    const domHight = document.body.offsetHeight
    // dom滚动位置
    const scrollTop =
      window.pageYOffset ||
      document.documentElement.scrollTop ||
      document.body.scrollTop
    // 获取监听元素
    let id: any
    // 获取监听元素本身高度
    let scrollHeight
    // 获取监听元素距离视窗顶部距离
    let offsetTop
    // 获取监听元素距离顶部高度-窗口高度
    let top
    // 元素距离底部的高度+元素本身高度
    let bottom
    // this.list.map( (i) => {
    id = document.getElementById(`top1`)
    scrollHeight = id.scrollHeight
    offsetTop = id.offsetTop
    top = offsetTop - domHight > 0 ? offsetTop - domHight : 0
    bottom = scrollHeight + offsetTop
    // 页面滚动位置 > 元素距离顶部高度-窗口高度 && 页面滚动位置 < 元素距离顶部高度+元素本身高度
    if (scrollTop >= top && scrollTop <= bottom) {
      this.top1type = true
    }
    // });
  }
mounted() {
  
    window.addEventListener('scroll', this.scrollToTop)
  
  }

addEventListener() 方法用于向指定元素添加事件​​​​​​​

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值