vue+element 模态框内容添加回到底部,顶部

问题,自己再项目中有回到顶部底部组件,在模态框中缺无法使用,怎么监听dom滚动条都无济于事;

首先都是在挂载函数里面添加了监听

 mounted() {
      // window.addEventListener("scroll", this.handleScroll,true); // 监听(绑定)滚轮滚动事件
   
    },

但是这样只能监听到body的滚动,当模态框弹出,我仔细检查发现,element 把body的滚动条直接隐藏,而是模态框里面的滚动条,所以在这个里面监听不到任何数据,发现问题所在了,那么解决就简单了;

1.我是使用 @scroll="handleScroll"  在我需要监听的模块中使用

    handleScroll(e) {
          let scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop
          this.scrollTop = e.srcElement.scrollTop
         //  console.log(this.scrollTop) // 获取你操作的滚动条高度
          this.visible =e.srcElement.scrollHeight > 500
      
    },

2.在对应模态框里面加入ref属性,然后回到顶部底部方法就直接设置滚动条位置即可

   //底部
      backToBottom() {
      //console.log(this.$refs.scollElement);
      if (this.isMoving) return
      const start = this.$refs.scollElement.$el.scrollTop 
      let end = this.$refs.scollElement.$el.scrollHeight
      this.$refs.scollElement.$el.scrollTo(start , end)
  
    },
//顶部
     backToTop() {
       // scollElement
      this.$refs.scollElement.$el.scrollTo(0, 0)
    },

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值