微信小程序事件对象中e.target和e.currentTarget的区别

发布时间:2019-06-16 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了微信小程序事件对象中e.target和e.currentTarget的区别脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

在小程序的事件回调触发时,会接收一个事件对象,事件对象的参数中包含一个target和currentTarget属性,接下来说说这二者的区别。


首先上代码:

wxML部分:

<view id='tar-father' bindtap='click'>
    父组件
    <view id='tar-children'>子组件</view>
  </view>
  
wxss部分:

#tar-father{
  width: 300rpx;
  height: 300rpx;
  background-color: skyblue;
}
#tar-children{
  background-color: pink;
}

效果图

微信小程序事件对象中e.target和e.currentTarget的区别

js部分:
  click: function (event) {
    console.LOG(event.target)
    console.log(event.currentTarget)
  }

当点击图中粉色子组件区域时的输出结果:

微信小程序事件对象中e.target和e.currentTarget的区别

event.target 为其子组件,也就是触发该事件的头组件
event.currentTarget 为事件所绑定的组件

当点击图中蓝色父组件区域时的输出结果:

微信小程序事件对象中e.target和e.currentTarget的区别


event.target 为父组件,因为触发的源头也就是父组件本身
event.currentTarget 始终为事件所绑定的组件

总结:target对应的是触发事件的源头组件,这个组件有可能是子组件,有可能是父组件,主要是看执行动作的区域。而currentTarget始终对应事件所绑定的组件。

脚本宝典总结

以上是脚本宝典为你收集整理的微信小程序事件对象中e.target和e.currentTarget的区别全部内容,希望文章能够帮你解决微信小程序事件对象中e.target和e.currentTarget的区别所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。