jQuery实现获取绑定自定义事件元素的方法


Posted in Javascript onDecember 02, 2015

本文实例讲述了jQuery实现获取绑定自定义事件元素的方法。分享给大家供大家参考,具体如下:

(function ($) { // 自定义itemtab事件
$.fn.bind = function(types, data, fn) { // 重载jQuery.fn.bind方法,用来截获绑定自定义事件的元素
 if(typeof types == 'string' && 'itemtab' == types) {
 var itemTouchStart = -1; // touchstart位置
 var itemTouchMove = -1; // touchend位置,值为-1时表示未触发
 var itemTriggerDistance = 0; // 拖动距离阀值,若大于该值则为拖动列表,若小于等于该值则为点击列表项
 var itemMoved = false; // 列表是否为拖动状态
 $(this).bind('touchstart', function (event) {
  if(!event.originalEvent.touches.length) return true;
  itemMoved = false;
  itemTouchStart = event.originalEvent.touches[0].pageX; // 记录起始位置
 }).bind('touchmove', function (event) {
  if(!event.originalEvent.touches.length) return true;
  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) { // 列表被拖动过,非点击操作
  return true;
  }
  $(this).trigger('itemtab'); // 触发自定义事件
 });
 }
 return this.on( types, null, data, fn ); // 这种做法具有侵入性,多个类似的代码会相互覆盖,可采用深度复制方式调用原$.fn.bind方法
}
})(jQuery);

希望本文所述对大家jQuery程序设计有所帮助。

Javascript 相关文章推荐
Jquery 获取checkbox的checked问题
Nov 16 Javascript
一个js控制的导航菜单实例代码
Dec 03 Javascript
AngularJS iframe跨域打开内容时报错误的解决办法
Jan 26 Javascript
js实现在网页上简单显示时间的方法
Mar 02 Javascript
使用AmplifyJS组件配合JavaScript进行编程的指南
Jul 28 Javascript
jQuery插件支持同一页面被多次调用
Feb 14 Javascript
JS中使用mailto实现将用户在网页中输入的内容传递到本地邮件客户端
Oct 08 Javascript
分享bootstrap学习笔记心得(组件及其属性)
Jan 11 Javascript
移动端网页开发调试神器Eruda的介绍与使用技巧
Oct 30 Javascript
VUE中v-on:click事件中获取当前dom元素的代码
Aug 22 Javascript
使用 Vue cli 3.0 构建自定义组件库的方法
Apr 30 Javascript
微信小程序事件 bindtap bindinput代码实例
Aug 26 Javascript
JS折半插入排序算法实例
Dec 02 #Javascript
如何动态加载外部Javascript文件
Dec 02 #Javascript
javascript实现获取浏览器版本、浏览器类型
Dec 02 #Javascript
JavaScript如何禁止Backspace键
Dec 02 #Javascript
js文本框输入内容智能提示效果
Dec 02 #Javascript
JavaScript使用DeviceOne开发实战(四)仿优酷视频应用
Dec 02 #Javascript
Jquery左右滑动插件之实现超级炫酷动画效果附源码下载
Dec 02 #Javascript
You might like
深入PHP curl参数的详解
2013/06/17 PHP
php生成随机颜色的方法
2014/11/13 PHP
PHP 实现缩略图
2021/03/09 PHP
javascript 常用代码技巧大收集
2009/02/25 Javascript
JS获得QQ号码的昵称,头像,生日的简单实例
2013/12/04 Javascript
使用javascript插入样式
2016/03/14 Javascript
JavaScript地理位置信息API
2016/06/11 Javascript
获取input标签的所有属性的方法
2016/06/28 Javascript
Node.js设置CORS跨域请求中多域名白名单的方法
2017/03/28 Javascript
详解vue-cli 脚手架项目-package.json
2017/07/04 Javascript
微信小程序实现下载进度条的方法
2017/12/08 Javascript
js实现多张图片每隔一秒切换一张图片
2019/07/29 Javascript
vant自定义二级菜单操作
2020/11/02 Javascript
[57:37]EG vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python PyTorch预训练示例
2018/02/11 Python
python支付宝支付示例详解
2019/08/22 Python
python opencv图片编码为h264文件的实例
2019/12/12 Python
Django admin 实现search_fields精确查询实例
2020/03/30 Python
django实现更改数据库某个字段以及字段段内数据
2020/03/31 Python
python中pyqtgraph知识点总结
2021/01/26 Python
深入解读CSS3中transform变换模型的渲染
2016/05/27 HTML / CSS
html5 乒乓球(碰撞检测)实例二
2013/07/25 HTML / CSS
Perfume’s Club英国官网:购买香水和护肤品
2019/11/02 全球购物
以太网Ethernet IEEE802.3
2013/08/05 面试题
英文自荐信
2013/12/15 职场文书
幼儿园毕业教师感言
2014/02/21 职场文书
会计员岗位职责
2014/03/15 职场文书
聘任书模板
2014/03/29 职场文书
《跟踪台风的卫星》教学反思
2014/04/10 职场文书
宣传口号大全
2014/06/16 职场文书
电子商务专业毕业生自荐书
2014/06/22 职场文书
旅游饭店管理专业自荐书
2014/06/28 职场文书
党支部组织生活会整改方案
2014/09/30 职场文书
合理化建议书
2015/02/04 职场文书
学校三八妇女节活动总结
2015/02/06 职场文书
2015年初中教师个人工作总结
2015/07/21 职场文书