微信小程序阻止冒泡点击_微信小程序bindtap事件与冒泡阻止详解
bindtap就是點擊事件
在.wxml文件綁定:
cilck here
在一個組件的屬性上添加bindtap并賦予一個值(一個函數名)
當點擊該組件時, 會觸發相應的函數執行
在后臺.js文件中定義tapMessage函數:
//index.js
Page({
data: {
mo: 'Hello World!!',
userid : '1234',
},
// 定義函數
tapMessage: function(event) {
console.log(event.target.id); // 可獲得
console.log(event.target.name); // 無法獲得, 通過target只能直接獲取id
console.log(event.target.dataset); // 要獲得其它屬性, 需要從dataset(數據集)中獲取
console.log(event.target.dataset.userxxx); // userxxx為自定義的屬性名, 但命名方式為:data-userxxx
// 這里還原使用userXxx
console.log(event.target.dataset.userXxx);
}
})
event封裝的是該事件的信息, 如上通過它可得到一些數據
注意一點:
cilck here
自定義數據(data-)中的大寫改為 短橫線+其小寫
取數據時, 去掉data和那些短橫線并還原大寫 (data-user-xxx --> userXxx)
事件冒泡就是指嵌套事件發生
如果多層標簽嵌套, 里層事件發生后, 其外層會相應發生, 如:
outer
middle
inner
handout: function () {
console.log("out");
},
handmiddle: function () {
console.log("middle");
},
handinner: function () {
console.log("inner");
}
點擊inner三個事件都執行, 點擊middlek執行handmiddle和handout, 點擊out只執行handout
阻止事件冒泡行為: 將bindtap改為catchtap就行了, 只會觸發自身的點擊事件
outer
middle
inner
需要理解是, 它阻斷自身的冒泡行為
如上點擊inner, 執行的是handinner和handmiddle兩個函數
不管是不是自身觸發的點擊行為, 傳到我這里, 我就將它阻斷(不再向上傳遞)
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:微信小程序BindTap快速連續點擊目標頁面跳轉多次問題處理
微信小程序視圖控件與bindtap之間的問題的解決
微信小程序實現bindtap等事件傳參
微信小程序冒泡事件及其阻止方法實例分析
微信小程序 頁面滑動事件的實例詳解
微信小程序 觸控事件詳細介紹
總結
以上是生活随笔為你收集整理的微信小程序阻止冒泡点击_微信小程序bindtap事件与冒泡阻止详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据结构小结+模板
- 下一篇: C# 控制台 模拟时间一秒一秒走动,直到