微信小程序--------触控事件

本文详细介绍了微信小程序中的触控事件,包括事件简介、事件类型、事件绑定和各种触控事件,如单击tap、双击、长按longpress(替代longtap),以及滑动touch系列事件的触发顺序和应用场景。同时,针对长按和点击事件同时触发的问题提出了解决方案,并给出了坐标轴及业务逻辑分析。
摘要由CSDN通过智能技术生成

一、事件简介

(1)本质:事件是视图层到逻辑层的通讯方式。

(2)作用:事件可以将用户的行为反馈到逻辑层进行处理。

(3)应用:事件可以绑定在组件上,当达到触发事件,就会执行逻辑层中对应的事件处理函数。

(4)参数:事件对象可以携带额外信息,如 id, dataset, touches

二、事件类型

在编写代码中,使用频率高的事件方式是:单击、长按、滑动。

常见的事件类型:
在这里插入图片描述
注意:touch触屏系列事件常结合画布canvas组件使用。

三、事件绑定

(1)事件绑定的写法同组件的属性,以 key、value 的形式:

①key 以bind或catch开头,然后跟上事件的类型,如bindtap、catchtap等。
自基础库版本 1.5.0 起,在非原生组件中,bind和catch后可以紧跟一个冒号,其含义不变,如bind:tap、catch:touchstart。

②value 是一个字符串,需要在对应的 Page 中定义同名的函数。不然当触发事件的时候会报错。

(2)bind和catch的区别:

bind事件绑定不会阻止冒泡事件向上冒泡。
在这里插入图片描述

catch事件绑定可以阻止冒泡事件向上冒泡。
在这里插入图片描述

四、触控事件

(1)触控事件之单击tap

分析:单击事件由touchstart(触摸动作开始)、touchend(触摸动作结束)组成。touchend后触发tap事件。

事件对象event:当事件回调触发的时候,逻辑层绑定该事件的处理函数会收到一个事件对象,event对象包含参数timeStamp。
在这里插入图片描述

单击过程验证:

<button bindtouchstart="dj1" bindtouchend="dj2" bindtap="dj" >单击</button>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值