微信小程序bindtap事件与冒泡阻止详解

微信小程序bindtap事件与冒泡阻止详解

本文主要对小程序bindtap事件和气泡预防进行详细介绍。文章通过示例代码非常详细,对大家的学习或者工作都有一定的参考价值。有需要的朋友可以参考一下。

Bindtap是一个点击事件

在.wxml文件绑定:

text id= textId data-user XXX= 100 bind tap= tap message 单击此处/text

将bindtap添加到组件的属性中,并赋予它一个值(函数名)。

当组件被点击时,相应的功能将被触发。

在后台.js文件中定义tapMessage函数:

//index.js

页面({

数据:{

莫:‘你好,世界!,

用户id:“1234”,

},

//定义函数

tapMessage:函数(事件){

console . log(event . target . id);//可用

console . log(event . target . name);//无法获取,只能通过target直接获取id

控制台. log(event . target . dataset);//要获取其他属性,需要从dataset中获取。

console . log(event . target . dataset . user XXX);//userxxx是用户自定义的属性名,但是命名方法是:data-userxxx

//这里用userXxx进行还原。

console . log(event . target . dataset . user XXX);

}

})

事件封装了事件的信息,可以像上面一样通过它获取一些数据。

注意一点:

!- data-userXxx,这个大写的X应该改成-x-

text id= textId data-user-XXX= 100 bind tap= tap message 单击此处/text

自定义数据(data-)的大写改为破折号的小写。

取数据时,去掉数据和那些短横线,恢复大写(data-data-user-xxx - userXxx)。

事件冒泡指的是嵌套事件。

如果多层标签嵌套, 里层事件发生后, 其外层会相应发生, 如:

查看bindtap=讲义

外面的

视图bindtap=handmiddle

中间

视图bindtap=handinner 内部/视图

/查看

/查看

讲义:函数(){

console . log( out );

},

handmiddle: function () {

console . log(“middle”);

},

handinner: function () {

console . log( inner );

}

单击inner执行所有三个事件,单击middlek执行handmiddle和handsout,单击out仅执行handsout。

停止事件冒泡行为:只需将bindtap改为catchtap,这样只会触发自己的click事件。

查看bindtap=讲义

外面的

view catchtap=handmiddle

中间

视图bindtap=handinner 内部/视图

/查看

/查看

应该理解,它阻止了自己冒泡行为。

如上点击inner,执行handinner和handmiddle两个功能。

不管是不是自触发点击,如果传到我这里,我就屏蔽(不再向上传)。

这就是本文的全部内容。希望对大家的学习有帮助,支持我们。

微信小程序bindtap事件与冒泡阻止详解