事件处理
开发者可以使用bind: + 事件名来进行事件绑定
<view class="view-more" bind:tap="loadMore">
点击加载更多
</view>
Page({
loadMore: function () {
console.log('加载更多被点击');
}
});
目前支持的事件类型有:
类型 触发条件
touchstart 手指触摸开始
touchmove 手指触摸后进行移动
touchend 手指触摸结束
touchcancel 手指触摸动作被打断,如来电提醒等
tap 手指触摸后马上离开动作
事件对象
当开发者绑定方法到事件,事件触发时,SWAN 会给触发的方法传递事件对象,事件对象因事件不同而不同,目前基础的事件对象结构为:
属性 类型 说明
type String 事件类型
currentTarget Object 事件触发的属性集合
dataset
开发者可以在组件中自定义数据,并在事件发生时,由 SWAN 所在事件对象中,传递给绑定函数。
示例代码:
<view data-swan="1" bind:tap="viewtap">dataset-test</view>
Page({
viewtap: function (event) {
console.log('value is:', event.currentTarget.dataset.swan);// 输出1
}
});
touches
开发者在接收到触摸类事件后,在事件对象上,可以接收到当前停留在屏幕上的触摸点。
Touch 对象
属性 类型 描述
pageX , pageY Number 距离文档左上角的距离,横向为 X,纵向为 Y
clientX , clientY Number 距离屏幕视口左上角距离,横向为 X,纵向为 Y
阅读本文的人还可以阅读: