jQuery实现获取绑定自定义事件元素的方法
本文实例讲述了jQuery实现获取绑定自定义事件元素的方法。分享给大家供大家参考,具体如下:
(function($){//自定义itemtab事件
$.fn.bind=function(types,data,fn){//重载jQuery.fn.bind方法,用来截获绑定自定义事件的元素
if(typeoftypes=='string'&&'itemtab'==types){
varitemTouchStart=-1;//touchstart位置
varitemTouchMove=-1;//touchend位置,值为-1时表示未触发
varitemTriggerDistance=0;//拖动距离阀值,若大于该值则为拖动列表,若小于等于该值则为点击列表项
varitemMoved=false;//列表是否为拖动状态
$(this).bind('touchstart',function(event){
if(!event.originalEvent.touches.length)returntrue;
itemMoved=false;
itemTouchStart=event.originalEvent.touches[0].pageX;//记录起始位置
}).bind('touchmove',function(event){
if(!event.originalEvent.touches.length)returntrue;
itemTouchMove=event.originalEvent.touches[0].pageX;//当前拖动位置
//console.log('touchmove:',itemTouchStart,itemTouchMove,itemMoved);
if(Math.abs(itemTouchMove-itemTouchStart)>itemTriggerDistance){
itemMoved=true;//列表被拖动
}
}).bind('touchend',function(event){
//console.log('itemMoved:',itemMoved);
if(itemMoved){//列表被拖动过,非点击操作
returntrue;
}
$(this).trigger('itemtab');//触发自定义事件
});
}
returnthis.on(types,null,data,fn);//这种做法具有侵入性,多个类似的代码会相互覆盖,可采用深度复制方式调用原$.fn.bind方法
}
})(jQuery);
希望本文所述对大家jQuery程序设计有所帮助。
热门推荐
10 小红书平安祝福语简短
11 生日祝福语大全女孩简短
12 收生日红包祝福语 简短
13 领证幽默祝福语简短
14 法考面试祝福语简短
15 老哥出门祝福语简短语
16 送灯祝福语简短独特
17 幼儿狗年祝福语大全简短
18 好听的元旦简短祝福语