vue 鼠标滚轮控制元素的x轴
使用directive,自定义指令
function xWheel(event) {
event.preventDefault()
this.scrollLeft += event.deltaY > 0 ? 20 : -20
}
export default {
mounted(el) {
el.addEventListener('wheel', xWheel)
},
beforeUnmount(el) {
el.removeEventListener('whell', xWheel)
}
}
import xScroll from './xScroll'
const directives = {
xScroll
}
export default {
install(app) {
Object.keys(directives).forEach((key) => {
app.directive(key, directives[key])
})
}
}
使用
import { createApp } from 'vue'
import App from './App.vue'
import directive from './directive/index.js'
const app = createApp(App)
app.use(directive)
app.mount('#app')
<div v-xScroll>...</div>