首页 > 编程知识 正文

touch事件位置,无意中解决了滑动变点击

时间:2023-05-04 22:12:07 阅读:44187 作者:766

如果向div、span、font、p等元素标记请求点击事件,移动端ios设备将无法识别该点击事件(通常为click事件),因此,

在这种情况下,我们通常使用touchstart而不是click事件,但很快就会显示出使用touchstart而不是click事件的弊端,并且每次滑动屏幕时都会立即启动单击事件

这个时候,把我这个包的方法放进去,这个弊端很快就会解决的

功能tap (El,fn ) { var startPoint={}; El.addevent listener (' touch start ',function(e ) ) start point={ x : e.changed touches [0].pagex,y 3360 e.chart El.addeventlistener('touchend ',function(e ) e ) ) varnowpoint={ x : e.changed touches [0].pagex, y 3360 e.chaagex if (math.ABS (now point.x-start point.x )5math.ABS ) nowpoint.y-startpoint.y )5) fnfn.call 但是,又出了问题。 添加event.preventDefault (; 浏览器报告错误

解决方法: 1、注册处理函数时,用以下方法明确声明不是被动window.addevent listener (‘touch move’,func,{ passive: false } )

2、适用CSS属性touch-action: none; 这将导致触摸事件不执行默认行为,但也会触发touch事件。 sortable-handler { touch-action : none; }

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。