滑动绑定事件(基于vue)

本文介绍了如何在Vue中实现滑动绑定事件,以达到滑动右侧字母列表时,手指停留位置对应显示相应字母开头的城市列表。通过touchstart、touchmove、touchend事件监听,计算手指滑动距离并确定对应字母,最后在计算属性中处理数据,实现功能。
摘要由CSDN通过智能技术生成

需求:滑动右侧字母列表,手指停在哪屏幕就显示哪儿一个字母开头的城市列表

 
5489379-9617c26fb9442200.png
 

思路

第一步

首先,给右侧字母表得先绑定三个事件。分别是touchstart、touchmove、touchend。

第二步

现在得需要知道手指滑倒的地方对对应的字母是什么。这就需要通过一些计算去得出。有一个解决办法是先计算出A与顶部的距离H,然后在算出每一个字母所占的高度h,然后计算手指与顶部的距离X,然后(X-H) / h。 如果计算出1.5,就代表是第二个字母,2.1就是第三个。

当然以上只是一种想法,具体实现看代码

第三步

具体算法有了,那么怎么实现呢?现在有几个问题需要解决。

1 计算出值后,怎么通过这个值去找到对应的字母?类似与数组,求出了下标,怎么得出这个具体的值

在计算属性中通过for in 循环。 同时需要注意,之前在v-for中因为cities是对象,而现在得出了letters,所

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值