table表格初始化自动滚动和鼠标移入滚动两种方法

方法一、初始化自动滚动 

html部分   :data="tableData"  ref="sdangerTable"  “tableData”表格数组

<el-table :data="tableData"  ref="sdangerTable"></el-table>

 

 js部分 挂载

 mounted() {

    this.tablescroll();

  },

 //自动滚动及鼠标移入移出方法一致

 

  //滚动方法
    tablescroll() {
      clearInterval(this.interval);
      const table = this.$refs.sdangerTable;
      const divData = table.bodyWrapper;
      this.interval = setInterval(() => {
        divData.scrollTop += 1
        if (divData.clientHeight + divData.scrollTop + 1 > divData.scrollHeight) {
          if (table.tableData.length > 6) {
            divData.scrollTop = 0;
          }
        }
      }, 100);
      const that = this;
      window.onresize = () => {
        return (() => {
          window.screenHeight = document.body.clientHeight;
          that.clientHeight = window.screenHeight
        })();
      }
    },

方法二、鼠标移入后自动滚动  移出后停止滚动

 <el-table :data="tableData"  
        ref="sdangerTable" @cell-mouse-enter="startScroll"
          @cell-mouse-leave="stopScroll">
 </el-table>
 // 鼠标移入滚动
    startScroll() {
      this.tablescroll();
    },
    // 鼠标移出停止滚动
    stopScroll() {
      clearInterval(this.interval);
      this.interval = null;
    },

    //滚动方法
    tablescroll() {
      clearInterval(this.interval);
      const table = this.$refs.sdangerTable;
      const divData = table.bodyWrapper;
      this.interval = setInterval(() => {
        divData.scrollTop += 1
        if (divData.clientHeight + divData.scrollTop + 1 > divData.scrollHeight) {
          if (table.tableData.length > 6) {
            divData.scrollTop = 0;
          }
        }
      }, 100);
      const that = this;
      window.onresize = () => {
        return (() => {
          window.screenHeight = document.body.clientHeight;
          that.clientHeight = window.screenHeight
        })();
      }
    },

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值