繁体   English   中英

用于“doubletap”的“touchstart”事件阻止滚动向上或向下滑动

[英]"touchstart" event used for a "doubletap" prevents scroll working on swipe up or down

我向“tbody”添加了“touchstart”事件,因此当我连续双击时会出现 function。 这非常有效,但可以防止在移动设备中向上或向下滚动(所以如果我的表有足够的行,你会被卡住)

//DoubleClick not working on doubleTap, so...
$("tbody").on("touchstart", tapHandler);
var tapedTwice = false;
function tapHandler(e) {
    
    if(!tapedTwice) {
        tapedTwice = true;
        setTimeout( function() { tapedTwice = false; }, 300 ); //doubletap speed
        return false;
    }
    e.preventDefault();//Prevents zoom, but without it, scroll still not working
    lightboxPrint(e);  //Fx for this event
 }

已经尝试删除所有 CSS 和 Bootstrap。 只有 function 出问题的是这个。 如果可以解决这个问题,我可以为“向上滑动”或“向下滑动”添加一个新事件来滚动吗?

我用特里的话来回答,只是为了结束这个问题。 他应该得到满分。 我没有从“tapedTwice = false”开始,而是从“tapedTwice = true”开始并相应地更改功能。

$("tbody").on("touchstart", tapHandler);
var tapedTwice = true;
function tapHandler(e) {
    
    if(tapedTwice) {
        tapedTwice = false;
        setTimeout( function() { tapedTwice = true; }, 300 );
        return true;
    }
    e.preventDefault();//Para evitar el zoom
    lightboxPrint(e);  
};

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM