bindtap和catchtap都屬于點擊事件函數(shù),將事件綁定到組件上,點擊組件后可以觸發(fā)函數(shù)成翩。
二者的區(qū)別在于是否冒泡事件。
冒泡事件:當一個組件上的事件被觸發(fā)后赦役,該事件會向父節(jié)點傳遞麻敌。
非冒泡事件:當一個組件上的事件被觸發(fā)后,該事件不會向父節(jié)點傳遞掂摔。
舉一個例子說明:
wxml部分:
說明:由以上代碼可以看到术羔,總共包含了三個view赢赊,其中id=outer 為最外層的父節(jié)點,綁定了bindtap事件级历;id=middle释移,綁定了catchtap事件,是id=inner 的父節(jié)點寥殖;id=inner組件綁定了bindtap事件玩讳。
.js部分:
調(diào)試結(jié)果:
1.點擊 inner view時,輸出結(jié)果:
2.點擊middle view時嚼贡,輸出結(jié)果:
3.點擊outer view時熏纯,輸出結(jié)果:
說明:由以上調(diào)試結(jié)果可以看到,bindtap為冒泡事件粤策,點擊組件事件時會向上傳遞樟澜,而catchtap為非冒泡事件,點擊組件事件時不會向上傳遞掐场。