以下示例中,点击 inner view 会先后调用handleTap1、handleTap2、handleTap3、handleTap4。
码清单3-20 使用capture-前缀阻止事件的冒泡和捕获
<view id="outer" bind:tap="handleTap4" capture-bind:tap="handleTap1">
outer view
<view id="inner" bind:tap="handleTap3" capture-bind:tap="handleTap2">
inner view
</view>
</view>
bind事件绑定不会阻止冒泡事件向上冒泡,catch事件绑定可以阻止冒泡事件向上冒泡。如果将以上代码的capture-bind:tap="handleTap1"改成capture-catch:tap="handleTap1",点击inner view只会触发handleTap1(catch事件阻止了tap事件冒泡)。
代码清单3-21 事件的冒泡和捕获
<view id="outer" bind:tap="handleTap4" capture-catch:tap="handleTap1">
outer view
<view id="inner" bind:tap="handleTap3" capture-bind:tap="handleTap2">
inner view
</view>
</view>
测试完毕,确认
码清单3-20 使用capture-前缀阻止事件的冒泡和捕获
这句话是错误的
catch事件阻止了tap事件冒泡是正确的
请勿重复发帖,此贴先隐藏