在jquery mobile中调整滑动事件的距离

时间:2013-05-02 07:31:34

标签: jquery jquery-mobile swipe

是否可以调整触发滑动事件所需的距离,如果是这样,它是如何完成的?

这里的代码我在谈论:

$('.page2').bind('swiperight', function(event, ui){
    $.mobile.changePage(
        $('.page1'),
        {
          allowSamePageTransition: true,
          transition: 'slide',
          reverse: 'true', 
          showLoadMsg: false,                    
          reloadPage: true,
        }
    );
    return false; 
}); 

1 个答案:

答案 0 :(得分:9)

是的,这是可能的。

您需要修改这些属性:

  • $.event.special.swipe.horizontalDistanceThreshold (default: 30px) - 滑动水平位移必须大于此值。

  • $.event.special.swipe.verticalDistanceThreshold (default: 75px) - 滑动垂直位移必须小于此值。

必须在 mobileinit 事件中执行此操作,如下所示:

$(document).bind("mobileinit", function(){
    $.event.special.swipe.horizontalDistanceThreshold (default: 30px);
    $.event.special.swipe.verticalDistanceThreshold (default: 75px);
});

最后一件事。如果您从未使用 mobileinit ,则必须在初始化jQuery mobile之前调用此事件,如下所示:

<script src="jquery.js"></script>
<script>
    $(document).bind("mobileinit", function(){
        $.event.special.swipe.horizontalDistanceThreshold (default: 30px);
        $.event.special.swipe.verticalDistanceThreshold (default: 75px);
    });
</script>
<script src="jquery-mobile.js"></script>

查看官方文档here