小程序学习06

不存在十全十美的文章 如同不存在彻头彻尾的绝望

目录

事件的介绍

事件的简单演练

常见事件类型 

事件类型演练

事件对象介绍

touches和changedTouches的区别 

currentTarget和target的区别

事件参数的传递 

事件冒泡和事件捕获


事件的介绍

什么时候会产生事件呢?

  • 小程序需要经常和用户进行某种交互,比如点击界面上的某个按钮或者区域,比如滑动了某个区域;
  • 这些交互都会产生各种各样的事件

事件时如何处理呢?

  • 事件是通过bind/catch这个属性绑定在组件上的(和普通的属性写法很相似, 以key=“value”形式);
  • key以bind或catch开发, 从1.5.0版本开始, 可以在bind和catch后加上一个冒号;
  • 同时在当前页面的Page构造器中定义对应的事件处理函数tapName, 如果没有对应的函数, 触发事件时会报 错
  • 当用户点击该button区域时,达到触发条件生成事件tap,该事件处理函数tapName会被执行,同时还会收 到一个事件对象event。

事件的简单演练

常见事件类型 

某些组件会有自己特性的事件类型

  • 比如input有bindinput/bindblur/bindfocus等
  • 比如scroll-view有bindscrolltowpper/bindscrolltolower等

这里是几个组件都有的, 并且也比较常见的事件类型:

事件类型演练

 

 有两个注意点:

  • Touchcancle: 在某些特定场景下才会触发(比如来电打断等)
  • tap事件和longpress事件通常只会触发其中一个

事件对象介绍

 当某个事件触发时, 会产生一个事件对象, 并且这个对象被传入到回调函数中, 事件对象有常见属性

touches和changedTouches的区别 

  1. 在touchend中不同
  2. 多手指触摸时不同

currentTarget和target的区别

 

事件参数的传递 

当视图层发生事件时,某些情况需要事件携带一些参数到执行的函数中, 这个时候就可以通过data-属性来完成:

格式:data-属性的名称

获取:e.currentTarget.dataset.属性的名称

事件冒泡和事件捕获

当界面产生一个事件时,事件分为了捕获阶段冒泡阶段

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值