/* 封装的TAP事件 */
(function () {
/**
* IOS 和 PC 端 只需要创建一次就能一直使用
* Android 手机 每次使用的时候都需要从新创建
*/
function createEvent() {
var myEvent = document.createEvent("HTMLEvents");
myEvent.initEvent("tap", true, true);
return myEvent;
}
var oldTime = null, newTime = null;
var startx, starty, endx, endy;
document.addEventListener("touchstart", function (ev) {
ev = ev || event;
oldTime = new Date().getTime();
startx = ev.changedTouches[0].clientX;
starty = ev.changedTouches[0].clientY;
});
document.addEventListener("touchend", function (ev) {
ev = ev || event;
newTime = new Date().getTime();
endx = ev.changedTouches[0].clientX;
endy = ev.changedTouches[0].clientY;
if(newTime - oldTime > 300) return;
if(Math.abs(startx - endx) > 10 || (Math.abs(starty - endy)) > 10) return;
ev.target.dispatchEvent(createEvent());
});
})();

最新文章

  1. Linux下用于查看系统当前登录用户信息 w命令
  2. salesforce 零基础学习(三十三)通过REST方式访问外部数据以及JAVA通过rest方式访问salesforce
  3. 以最简单的登录为例,诠释JS面向对象的简单实例
  4. 极限编程之TDD
  5. regular expressions
  6. Light OJ 1025 - The Specials Menu(动态规划-区间dp)
  7. [转]Windows配置Git
  8. 编译redis
  9. IBM X3650 M4安装win 2008 Server操作指南
  10. SpringMVC ResponseBody返回中文乱码解决方案
  11. Python学习笔记整理(十七)异常处理
  12. paip.c++ qt 图片处理 检测损坏的图片
  13. HttpServletResponse对象介绍
  14. 清北Day 2
  15. 使用binlog2sql做数据恢复的简单示例
  16. python爬虫(五)_urllib2:Get请求和Post请求
  17. JMeter命令行监控CPU
  18. Promise的简单用法
  19. JavaScript arguments对象
  20. uniqid,md5,microtime

热门文章

  1. gcd模板(欧几里得与扩展欧几里得、拓展欧几里得求逆元)
  2. JavaScript原型继承工作原理
  3. LG2024 [NOI2001]食物链
  4. 详解Hadoop Slots的含义
  5. MySQL Disk--SSD 特性
  6. HBase scan shell操作详解
  7. PHP安装sqlsrv和memcache扩展步骤
  8. 遍历json 对象的属性并且动态添加属性
  9. RabbitMQ负载均衡方案之LVS
  10. Oracle数据泵的使用