javascript – touchstart阻止按钮监听器

前端之家收集整理的这篇文章主要介绍了javascript – touchstart阻止按钮监听器前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用Seadragon Ajax和jQuery touch事件监听器.

容器有touchstart,touchmove和touchend绑定它,继续触摸开始:

.bind('touchstart MSPointerDown',function(e){

            var p = coord(e.originalEvent);
            p.start = true;
            p.scale = 1;
            if(e.originalEvent.pointerType === 4) return;
            else if(e.originalEvent.pointerType !== undefined) e.originalEvent.preventMouseEvent();

            $(this).data(p);            

            e.preventDefault();
            e.stopPropagation();
        })

在seadragon视图内部生成了一些按钮.由于其容器div上的touchstart,这些按钮不会在平板电脑上触发.用鼠标工作正常.

new Seadragon.Button("Click to go","",null,moveFunction,null );

我需要在触摸启动功能中的所有内容之前检查触摸是否在按钮上,但实际上我不确定如何.

解决方法

通过添加if语句来检查触摸次数,如下所示:

.bind('touchstart MSPointerDown',function(e){
            if (event.touches.length != 1) {
                e.preventDefault();
                e.stopPropagation();
            }

            var p = coord(e.originalEvent);
            p.start = true;
            p.scale = 1;
            if(e.originalEvent.pointerType === 4) return;
            else if(e.originalEvent.pointerType !== undefined) e.originalEvent.preventMouseEvent();

            $(this).data(p);        


        })

猜你在找的JavaScript相关文章