Element UI 走马灯 实现鼠标滚动切换页面

鼠标滚动切换页面

elementui Carousel 走马灯+鼠标滚轮事件实现

一、在轮播图外的盒子外添加鼠标滚轮事件,触发GoWheel函数。

js 复制代码
 @wheel="goWheel"

二、通过判断deltaY的数值来触发相应事件

它检查滚轮事件的deltaY属性是否大于0

js 复制代码
event.deltaY

当鼠标滚轮向下滚动时,其返回值大于零,向上滚动时其返回值小于零。

三、通过ref 获取轮播图元素,再通过相应方法控制轮播图执行事件,详情见element ui 官网事件。

js 复制代码
this.$refs.swiper.next();

this.$refs.swiper.prev();

代码

html 复制代码
<div @wheel="goWheel"> 
        
    <el-carousel height="100vh" direction="vertical" :autoplay="false" @change="load"             
           trigger="click" ref="swiper" :loop="false">
 
 
             <el-carousel-item>
 
             </el-carousel-item>
 
    </el-carousel>
 
</div>

el-carousel-item里面放切换的图片或视频

javascript 复制代码
goWheel() {
    if (event.deltaY > 0 && this.one==true) { //data中定义one为true 当one为true时执行
          this.$refs.swiper.next();           //以此来控制每次轮播图切换的张数
          this.one=false;
          setTimeout(()=>{
              this.one=true
          },1000)
    }
    
    if (event.deltaY < 0 && this.one==true) {
        this.$refs.swiper.prev();
        this.one=false;
        setTimeout(()=>{
            this.one=true
        },1000)
    }
},
相关推荐
程序猿ZhangSir1 小时前
Vue3 项目的基本架构解读
前端·javascript·vue.js
亲亲小宝宝鸭2 小时前
写了两个小需求,终于搞清楚了表格合并
前端·vue.js
Face3 小时前
路由Vue-router 及 异步组件
前端·javascript·vue.js
风之舞_yjf4 小时前
Vue基础(14)_列表过滤、列表排序
前端·javascript·vue.js
疯狂的沙粒5 小时前
uni-app 项目支持 vue 3.0 详解及版本升级方案?
前端·vue.js·uni-app
Lhuu(重开版5 小时前
Vue:Ajax
vue.js·ajax·okhttp
国家不保护废物6 小时前
从刀耕火种到现代框架:DOM编程 vs Vue/React 进化史
前端·vue.js·react.js
阿琳a_6 小时前
前端对WebSocket进行封装,并建立心跳监测
前端·javascript·vue.js·websocket
Am1nnn6 小时前
【Pinia】Pinia和Vuex对比
前端·javascript·vue.js
我的心巴8 小时前
vue-print-nb 打印相关问题
前端·vue.js·elementui