繁体   English   中英

在不禁用滚动的情况下,在touchstart上的preventDefault()

[英]preventDefault() on touchstart without disabling scrolling

我使用以下脚本来防止第一次点击链接:

$(document).ready(function () {
    $('#container a').bind("touchstart",function(e){
        var $link_id = $(this).attr('id');
        if ($(this).parent().parent().data('clicked') == $link_id) {
            return true;
        } else {
            e.preventDefault();
        }
    });
});

由于这些链接[#container a]覆盖了整个屏幕,因此我无法在触摸设备上滚动。

如果用户滚动 (触摸移动/滑动/拖动/…), 是否 可以保持滚动行为正常工作

也许还有另一种方法/脚本可以在不禁用滚动的情况下获得我想要的效果?

我通过使用quo.js找到了解决此问题的另一种方法,该库将处理tap事件,而不会影响滚动功能,代码将像这样

$(document).ready(function () {
 $$('#container a').tap(function(){
     //your function here
 });
});

暂无
暂无

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

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