vue横向滚动条通过鼠标滚动控制
Posted 码上暴富
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue横向滚动条通过鼠标滚动控制相关的知识,希望对你有一定的参考价值。
vue横向滚动条通过鼠标滚动控制
vue横向滚动条通过鼠标滚动控制
<template>
<ul class="scrollX">
<li v-for="(item, i) in 20">item</li>
</ul>
</template>
<script>
export default
name: "Test01",
methods:
// 初始化与绑定监听事件方法
scrollInit()
// 获取要绑定事件的元素
const scrollDiv = document.getElementsByClassName("scrollX")[0];
// document.addEventListener('DOMMouseScroll', handler, false)
// 添加滚轮滚动监听事件,一般是用下面的方法,上面的是火狐的写法
scrollDiv.addEventListener('mousewheel', handler, false)
// 滚动事件的出来函数
function handler(event)
// 获取滚动方向
const detail = event.wheelDelta || event.detail;
// 定义滚动方向,其实也可以在赋值的时候写
const moveForwardStep = 1;
const moveBackStep = -1;
// 定义滚动距离
let step = 0;
// 判断滚动方向,这里的100可以改,代表滚动幅度,也就是说滚动幅度是自定义的
if (detail < 0)
step = moveForwardStep * 100;
else
step = moveBackStep * 100;
// 对需要滚动的元素进行滚动操作
scrollDiv.scrollLeft += step;
,
,
mounted()
this.scrollInit();
</script>
<style lang="scss">
.scrollX
width: 800px;
display: flex;
overflow-x: auto;
overflow-y: hidden;
li
flex-shrink: 0;
width: 100px;
line-height: 40px;
background-color: #ccc;
margin: 10px;
text-align: center;
</style>
结果
以上是关于vue横向滚动条通过鼠标滚动控制的主要内容,如果未能解决你的问题,请参考以下文章