bind事件绑定不会阻止冒泡事件向上冒泡,catch事件绑定可以阻止冒泡事件向上冒泡。
如在下边这个例子中,点击 inner view 会先后调用handleTap3和handleTap2(因为tap事件会冒泡到 middle view,而 middle view 阻止了 tap 事件冒泡,不再向父节点传递),点击 middle view 会触发handleTap2,点击 outer view 会触发handleTap1。
<view id="outer" bindtap="handleTap1">
outer view
<view id="middle" catchtap="handleTap2">
middle view
<view id="inner" bindtap="handleTap3">
inner view
</view>
</view>
</view>
事件的捕获:
以capture-bind开头的事件,可以实现捕获事件。
注意:小程序官方文档的例子是capture-bind:touchstart, 这个操作是手指触摸动作开始,在有滑动效果的地方,会与滑动事件引起冲突。
对于capture-bind:tap 才是我们经常使用的点击事件。
具体要使用的事件可以看下图。都是以capture-bind开头就可以实现

当然:这个具体的一些使用建议参看小程序的官方文档。

本文介绍了小程序中bind与catch事件绑定的区别:bind绑定不会阻止事件冒泡,而catch绑定则会阻止事件冒泡。同时,文章还讲解了如何使用capture-bind来实现事件捕获。
381

被折叠的 条评论
为什么被折叠?



