目前有u-scroll-list组件2个,想实现在H5页面滑动X轴时,一个u-scroll-list组件的滑动的时候,另一个u-scroll-list组件也能同时移动,而且不能有延时,请问代码怎么写
时间: 2023-03-01 21:03:21 浏览: 99
h5滑动页面插件
这可以通过创建一个自定义事件来实现。
首先,在第一个 u-scroll-list 组件中,添加一个监听滑动事件的处理函数,在该函数中触发自定义事件:
```
<template>
<u-scroll-list ref="scroll1" @scroll="handleScroll1">
<!-- 你的内容 -->
</u-scroll-list>
</template>
<script>
export default {
methods: {
handleScroll1(e) {
this.$emit('sync-scroll', e)
}
}
}
</script>
```
然后,在父组件中,监听该自定义事件并在处理函数中更新第二个 u-scroll-list 组件的滚动位置:
```
<template>
<u-scroll-list ref="scroll1">
<!-- 你的内容 -->
</u-scroll-list>
<u-scroll-list ref="scroll2" @sync-scroll="handleSyncScroll">
<!-- 你的内容 -->
</u-scroll-list>
</template>
<script>
export default {
methods: {
handleSyncScroll(e) {
this.$refs.scroll2.scrollTo(e.scrollLeft, e.scrollTop)
}
}
}
</script>
```
这样,滑动第一个 u-scroll-list 组件时,第二个 u-scroll-list 组件也会同时滑动,并且不会有延时。
阅读全文