使el-table通过操控鼠标滚轮横向滚动

1.创建directive文件夹,里面创建directive.js文件

复制代码
import Vue from 'vue';

Vue.directive('scroll-x',{
  inserted:function(el){
    let domClass = el.getAttribute('class')
    if(domClass.indexOf('el-table')<0){
      return false
    }
    const scrollDiv = el;
    if(scrollDiv==null){
      return false
    }
    scrollDiv.addEventListener('mousewheel', handler, false)
    const that = this
    function handler(event) {
      const detail = event.wheelDelta || event.detail;
      const moveForwardStep = 1;
      const moveBackStep = -1;
      let step = 0;
      if (detail < 0) {
        step = moveForwardStep * 100;
      } else {
        step = moveBackStep * 100;
      }
      let d = scrollDiv.querySelector('.el-table__body-wrapper')
      d.scrollLeft += step
    }
  }
})

2.在main.js中全局引入

import './directive/directives'
3.在vue页面中使用 v-scroll-x

<el-table

v-scroll-x

> </el-table>

相关推荐
羊羊小栈13 小时前
基于「YOLO目标检测 + 多模态AI分析」的光伏板缺陷检测分析系统(vue+flask+模型训练+AI算法)
vue.js·人工智能·yolo·目标检测·flask·毕业设计·大作业
jump_jump14 小时前
超长定时器 long-timeout
前端·javascript·node.js
我登哥MVP15 小时前
HTML-CSS-JS-入门学习笔记
javascript·css·笔记·学习·html
Mintopia15 小时前
架构进阶 🏗 从 CRUD 升级到“大工程师视野”
前端·javascript·全栈
Mintopia15 小时前
小样本学习在 WebAI 场景中的技术应用与局限
前端·人工智能·aigc
光影少年15 小时前
vue生态都有哪些?
前端·javascript·vue.js
一只大头猿15 小时前
基于SpringBoot和Vue的超市管理系统
前端·vue.js·spring boot
用户14567756103716 小时前
告别繁琐操作!Excel合并原来可以这么轻松
前端
itslife16 小时前
vite 源码 - 创建 ws 服务
前端·javascript
懒人Ethan16 小时前
解决一个C# 在Framework 4.5反序列化的问题
java·前端·c#