移動端頁面功能之------長按事件

有時在作移動端頁面開發過程當中遇到這種需求:''模擬指紋識別''
實際上咱們只能經過長按頁面中的元素來模擬這個功能。
在jQuery和Zepto中都沒有包含長按事件,因此須要咱們來擴展一下。this

$.fn.longPress = function(fn) {
    var timeout = undefined;
    var $this = this;
    for(var i = 0;i<$this.length;i++){
        $this[i].addEventListener('touchstart', function(event) {
            timeout = setTimeout(fn, 800);  //長按時間超過800ms,則執行傳入的方法
            }, false);
        $this[i].addEventListener('touchend', function(event) {
            clearTimeout(timeout);  //長按時間少於800ms,不會執行傳入的方法
            }, false);
    }
}

首先要添加這段代碼,而後調用:code

$('.object').longPress(function(){
    //do something...
});
相關文章
相關標籤/搜索