把引用zepto.js的代码改成引用jquery之后,touch事件就执行不了了,为什么?

2025-05-09 20:11:05
推荐回答(1个)
回答1:

因为jQuery里没有touch这个方法啊==!touch是原生JS的方法,需要在jQuery里声明才行, 所以无法bind,但是可以通过原生的方式来写

如:

var a=document.getElementById("a");
a.addEventListener("touchstart",function(e){
 if(e.targetTouches.length==1 && !self.busy){
                self.point_x = e.targetTouches[0].screenX;
                self.point_y = e.targetTouches[0].screenY;
            }
},false);

相比之下我倒更喜欢原生写touch这些,因为jQuery的执行效率太低了。zepto.js比jQuery效率更低,dom查询速度不如jQuery的1/10. 移动端目前性能最好的是jqmobi.js