微信小程序 基础 - 06 (事件处理:冒泡事件、非冒泡事件,事件绑定机制)

小程序的事件处理

事件是视图层到逻辑层的通讯方式。它可以将用户的行为反馈到逻辑层进行处理。

1、事件类型

在微信小程序中,事件类型分类两大类:

  1. 冒泡事件:当一个组件上的事件被触发后,该事件会向父节点传递。

  2. 非冒泡事件:当一个组件上的事件被触发后,该事件不会向父节点传递。

冒泡事件

以下表格列出了小程序中定义的常用的冒泡事件:

类型触发条件
touchstart手指触摸动作开始
touchmove手指触摸后移动
touchcancel手指触摸动作被打断,如来电提醒,弹窗
touchend手指触摸动作结束
tap手指触摸后马上离开
longpress手指触摸后,超过350ms再离开,如果指定了事件回调函数并触发了这个事件,tap事件将不被触发
longtap手指触摸后,超过350ms再离开(推荐使用longpress事件代替)

除上表之外的其他组件自定义事件如无特殊声明都是非冒泡事件。

非冒泡事件

其他组件自定义事件(微信官方自定义,非原生dom事件)如无特殊声明都是非冒泡事件。例如:

<input bindinput="inputEvent" />
<scroll-view bindscroll="scrollEvent" />

2、小程序的事件绑定机制

        常见的小程序事件绑定方式如下:

<button bind事件名="事件处理函数名"></button>
<button bind:事件名="事件处理函数名"></button>
<button catch事件名="事件处理函数名"></button>

   bind方式绑定事件可以应用于任何组件,而bind:方式不能应用于原生组件

原生组件只由操作系统控制的组件,如input组件,video组件、camera组件等。原生组件的特点是由AndroidIOS操作系统直接提供,并不是微信自己实现的UI

   bindbind:方式绑定的事件不能阻止事件的冒泡, 但是catch方式绑定的事件可以自动阻止事件冒泡。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值