• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

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

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

事件的类别分为几种:

       点击事件: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覆盖是无效的。

 

转: https://blog.csdn.net/qq_36002582/article/details/78755427

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
selectComponent是ok的,小程序组件component方式,让子页面重绘发布时间:2022-07-18
下一篇:
微信小程序获取unionid与openid发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap