微信小程序> 微信小程序:冒泡事件及其阻止

微信小程序:冒泡事件及其阻止

浏览量:551 时间: 来源:你又开始了

事件的类别分为几种:

       点击事件:tap

       长按事件:longtap

       触摸事件:touchstart; touchend;touchcancel;touchmove

       其他:input;submit....

其中前三类是冒泡事件,其他的称为非冒泡事件


写一个简单的例子,代码就不一一贴出来了,WXML的文件如下:

<view class='redview' bindtap='redclick'>  红色  <view class='yellowview' bindtap='yellowclick'>    黄色    <view class='blueview' bindtap='blueclick'>      蓝色    </view>  </view></view>
效果如图:

小程序

当我点击最内层的蓝色方框的时候,打印的结果如下:

小程序

冒泡事件的机制是先打印点击的蓝色,也就是最内层,然后依次打印第二层和第三层。假设点击黄色层,会依次打印出黄色和红色。点击红色时只打印红色。

但是也可以阻止冒泡事件的发生,其实很简单,直接把bindtap改为catchtap即可。

<view class='redview' bindtap='redclick'>  红色  <view class='yellowview' bindtap='yellowclick'>    黄色    <view class='blueview' catchtap='blueclick'>      蓝色    </view>  </view></view>
这样你点击最内层的蓝色,只会打印蓝色而不会打印出黄色和红色了。但是点击黄色还是会打印黄色和红色,这个时候再把黄色页面的bindtap改成catchtap就可以了。
友情提示:有一部分标签是默认在最上层的,比如video,想在video上放一个view然后设置catchtap将video覆盖是无效的。

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎