码迷,mamicode.com
首页 > Web开发 > 详细

HTML5 自定义点击事件

时间:2017-09-06 16:20:39      阅读:455      评论:0      收藏:0      [点我收藏+]

标签:size   star   time()   nbsp   get   事件   tee   init   end   

        /* 封装的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());
            });
        })();

 

HTML5 自定义点击事件

标签:size   star   time()   nbsp   get   事件   tee   init   end   

原文地址:http://www.cnblogs.com/lovling/p/7485341.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!