微信开发中的绑定事件包含:bindtap,bindtouchstart等bind**事件和catchtap,catchtouchstart等catch**事件。
两者中只是bind和catch不同,而**包括tap,touchstart,touchend,touchcancel,touchmove,longtap事件。
bind系列事件绑定不会阻止冒泡事件向上冒泡,但是catch系列事件绑定可以阻止冒泡事件向上冒泡。
首先采用实例来解释一下什么是微信小程序中的冒泡事件:
代码如下:
这里是三个组件嵌套的按钮事件,点击outter view,执行outtertap事件,
点击middle view,执行outtertap事件和middletap事件,
点击inner view,执行outtertap事件、middletap事件和innertap事件,
即在点击内层的按钮时,在外层的事件也会触发执行,
解决这个问题可采用catchtap绑定事件,将代码改为一下即可:
这时,无论点击哪一个按钮,它都只会执行一个自己的事件。