vue 中监听页面滚动


监听页面滚动

在methods中定义一个方法

 
 
handleScroll () {
//获取滚动时的高度
        let scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop;
        let oneHeight = this.$refs.scrollOne.offsetHeight ;
        let twoHeight = this.$refs.scrollTwo.offsetHeight + oneHeight;
        let threeHeight = this.$refs.scrollThree.offsetHeight + twoHeight;
        // 
        // console.log(scrollTop)
        if (scrollTop > 0) {
          //滚动大于0的时候要做的操作
        }
        if (scrollTop > 200) {
          //大于200的时候要做的操作
        }
        if (scrollTop > oneHeight) {
          //这是滑动到scrollTwo的距离要做的操作
} if (scrollTop > twoHeight) { //这是滑动到scrollThree要做的操作 }

html中

<div class="gooddetail-info">
        <div ref="scrollOne"></div>
        <div ref="scrollTwo"></div>
        <div ref="scrollThree"></div>
 </div>

在mounted监听

 mounted() {
      window.addEventListener("scroll",this.handleScroll); 
},

最后要销毁这个监听要不然会在其他的页面中 执行 报错

destroyed() {
      document.removeEventListener('scroll', this.handleScroll)
    }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM