使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>

相关推荐
蜡台1 分钟前
Vue 中directive的钩子函数 作用,调用时机,参数,及使用场景举例说明
前端·javascript·vue.js·指令·directive
梵得儿SHI2 分钟前
Vue 3 生态工具实战:UI 组件库与表单验证完全指南
前端·ui·vue3·elementplus·表单验证·antdesignvue·veevalidate
成都渲染101云渲染66662 分钟前
UE5云渲染选它:5090显卡加持,高负载不崩
前端
●VON8 分钟前
Flutter Web 开发:解决跨域(CORS)问题的终极指南
前端·flutter
一只大马猴呀20 分钟前
Windows 安装使用 nvm,Node.js、npm多版本管理、切换
前端·npm·node.js
吴声子夜歌22 分钟前
TypeScript——VSCode搭建开发环境
javascript·vscode·typescript
网络点点滴23 分钟前
渐层响应式shallowRef和shallowReactive
前端·javascript·vue.js
@yanyu66626 分钟前
05计算属性与定时器
前端·javascript·vue.js
哈__28 分钟前
ReactNative项目OpenHarmony三方库集成实战:react-native-chart-kit
javascript·react native·react.js
小同志0031 分钟前
JQuery
前端·javascript·jquery