在小程序中, 事件分為兩種類型:
- 冒泡事件, 當一個組件上的事件被觸發后,該事件會向父節點傳遞
- 非冒泡事件, 當一個組件上的事件被觸發后, 該事件不會向父節點傳遞。
一 冒泡事件
tap, touchstart、 touchend 事件等都屬于冒泡事件,小程序提供的全 部冒泡事件如下表所示:
看一個例子:
示例運行效果:
小程序冒泡事件
二 事件綁定類型
上述例子,點擊事件 用到了bindtap, 實際上事件綁定分別有 bind 與 catch 兩種,
兩者的區別:
- bind事件不會阻止冒泡事件向上冒泡
- catch事件綁定可以阻止冒泡事件向上冒泡。
以下看一個例子理解catch阻止冒泡。
修改上述 wxml 頁面中 view2的bindtap事件為catchtap,
保存后,點擊view2, 日志只會輸出 view2222222222222click,
點擊 view3, 日志只會輸出 view3333333333333click,
這就說明冒泡事件被阻止了。