isyarat


MIP merangkum gerak isyarat seperti klik, klik dua kali, gelongsor, dsb., yang boleh digunakan dalam komponen

Contoh

var util = require('util');
var Gesture = util.Gesture;
var customEle = require('customElemenet').create();


var build = function () {
    var gesture = new Gesture(this.element);

    // on 可接受多个事件名做为参数,以空格分隔。如 gesture.on('tap swipe')
    gesture.on('tap', function (event, data) {
        // 原始事件。如tap事件是通过 touchend 触发,event为tap对应的touchend事件对象
        console.log(event);
        // gesture 计算后的数据。参数介绍见后面
        console.log(data.type); // "tap"
    });
};

Pengenalan kepada parameter pemulaan

gerak isyarat Apabila membuat seketika, parameter kedua boleh melepasi objek sebagai konfigurasi parameter

Contoh:

   // 默认阻止纵向滑动事件
    var gesture = new Gesture(element, {
        preventY: true
    });

Pengenalan parameter khusus:

preventDefault         是否阻止默认事件
preventX               是否阻止横向滑动时的默认事件
preventY               是否阻止纵向滑动时的默认事件
stopPropagation        是否阻止事件冒泡

Parameter lalai:

// 如果初始化时不传入配置参数,会使用下面的配置进行初始化
{
    preventDefault: false,
    stopPropagation: false,
    // 默认会阻止横滑的事件,考虑到浏览器横滑有很多默认操作,所以在这里默认阻止横滑
    preventX: true,
    preventY: false
}

Gerak isyarat Pengenalan objek data

Objek data dihantar masuk sebagai parameter kedua fungsi pemprosesan acara.

Contoh:

    gesture.on('tap', function (event, data) {
        console.log(data);
    });

Medan umum:

angle              滑动角度,如横滑为0度
deltaTime          从开始到结束的时间间隔。单位是msdeltaX             横轴位移
deltaY             纵轴位移
direction          方向。0: 未变动   1: 上   2:右   3: 下   4: 左
distance           移动距离
pointers           触摸点
timeStamp          事件发生的时间戳
velocity           速度
velocityX          横向速度
velocityY          纵向速度
x                  触摸中心点坐标x
y                  触摸中心点坐标ytype               事件类型

Medan lanjutan:

Setiap gerak isyarat boleh memanjangkan medan ke objek data. Contohnya, medan swipeDirection dalam acara leret, sila lihat pengenalan pengecam gerak isyarat untuk mendapatkan butiran Pengecam gerak isyarat boleh menerima objek data gerak isyarat, mengecam gerak isyarat tertentu dan mencetuskan peristiwa gerak isyarat tertentu.

Objek pengecam gerak isyarat dicipta secara automatik apabila pengguna mengikat acara dan dimusnahkan secara automatik apabila pengguna menyahjilidkan acara.

Pada masa ini terdapat tiga pengecam terbina dalam: ketik, dobuletap, leret

tap

Penggunaan:

gesture.on('tap', function (event, data) {
    console.log('单击');
});

doubletap

Klik dua kali dan ketik dua kali akan diikat pada masa yang sama kelewatan 300ms untuk menentukan sama ada klik dua kali dicetuskan.

Cara guna:

gesture.on('tap', function (event, data) {
    console.log('双击');
});

swipe

Swipe

Cara guna:

// 使用方法1:
gesture.on('swipe', function (event, data) {
    console.log(data.type); // "swipe"
    console.log(data.swipeDirection); // "up" or "right" or "down" or "left"
});

// 使用方法2:
gesture.on('swipeup swipedown', function (event, data) {
    console.log(data.type) // "swipeup" or "swipedown"
    console.log(data.swipeDirection) // "up" or "down"
});