• 浏览器模拟touch


            var ele =  document.getElementById('trackLine')
            //may have x and y properties in some browsers,But it always has left, top, right, and bottom properties.
            var rect = ele.getBoundingClientRect(); 
            var touch = new Touch({
                "identifier" : 0,
                "target" : ele,
                "clientX" : (rect.left + rect.right)/2,
                "clientY" : (rect.top + rect.bottom)/2,
                "screenX" : (rect.left + rect.right)/2,
                "screenY" : (rect.top + rect.bottom)/2,
                "pageX" : (rect.left + rect.right)/2,
                "pageY" : (rect.top + rect.bottom)/2,
                "radiusX" : 11.5,
                "radiusY" : 11.5,
                "rotationAngle" : 0.0,
                "force" : 1});
            
            var touchstart = new TouchEvent("touchstart", {
                cancelable: true,
                bubbles: true,
                composed: true,
                touches: [touch],
                targetTouches: [touch],
                changedTouches: [touch]
            });
            
            var touchend = new TouchEvent("touchend", {
                cancelable: true,
                bubbles: true,
                composed: true,
                touches: [touch],
                targetTouches: [touch],
                changedTouches: [touch]
            });
            
            
            
            ele.dispatchEvent(touchstart);
            
            window.interval = setInterval(function(){
                var touch = new Touch({
                "identifier" : 0,
                "target" : ele,
                "clientX" : (rect.left* Math.random() + rect.right * Math.random())/2,
                "clientY" : (rect.top* Math.random() + rect.bottom* Math.random())/2,
                "screenX" : (rect.left* Math.random() + rect.right* Math.random())/2,
                "screenY" : (rect.top* Math.random() + rect.bottom* Math.random())/2,
                "pageX" : (rect.left* Math.random() + rect.right* Math.random())/2,
                "pageY" : (rect.top* Math.random() + rect.bottom* Math.random())/2,
                "radiusX" : 11.5,
                "radiusY" : 11.5,
                "rotationAngle" : 0.0,
                "force" : 1});
                console.log(touch)
                var touchmove = new TouchEvent("touchmove", {
                    cancelable: true,
                    bubbles: true,
                    composed: true,
                    touches: [touch],
                    targetTouches: [touch],
                    changedTouches: [touch]
                });
                ele.dispatchEvent(touchmove);
            }, 20);
    
            
            
                
  • 相关阅读:
    Java IO总结
    Tomcat处理一个HTTP请求的过程
    Tomcat的web项目部署方式
    Tomcat性能调优
    jquery基础知识汇总
    Javascript中的正则表达式
    HTTP首部
    HTTPS
    Javascript中关于cookie的那些事儿
    HTTP请求方法详解
  • 原文地址:https://www.cnblogs.com/rubekid/p/13922846.html
Copyright © 2020-2023  润新知