4

我查看了 jquerymobile 文档并看到: event forswipeswipeleftswiperight

是否有swipevertical 事件或类似事件?

4

3 回答 3

3

不幸的是,jQuery mobile 中不存在 swipeup 和 swipedown,它们也没有计划用于 1.3 版。这里有一个第 3 方插件:http: //developingwithstyle.blogspot.com/2010/11/jquery-mobile-swipe-up-down-left-right.html。像使用普通事件一样使用它们:swipedownswipeup

如果你需要这个实现,你也可以使用这个插件:http: //www.netcu.de/jquery-touchwipe-iphone-ipad-library。它也适用于安卓设备。这是一个最坏的情况解决方案,因为与官方事件不同,这些事件在桌面浏览器上不起作用。

这是一个工作示例,仅在移动设备上进行测试:http: //jsfiddle.net/Gajotres/WYnnk/

    $("#wrapper").touchwipe({
         wipeLeft: function() { 
             $("#carousel").trigger("next", 1);
         },
         wipeRight: function() { 
             $("#carousel").trigger("next", 1);        
         },
         min_move_x: 20,
         min_move_y: 20,
         preventDefaultEvents: true
    }); 
于 2013-01-19T19:30:06.387 回答
1

通过将以下代码添加到pageshow处理程序,我能够模拟页面标题上的拉动刷新功能......

  // Set aside the thresholds so they can be reset later.
  var _scrollSupressionThreshold = $.event.special.swipe.scrollSupressionThreshold;
  var _horizontalDistanceThreshold = $.event.special.swipe.horizontalDistanceThreshold;
  var _verticalDistanceThreshold = $.event.special.swipe.verticalDistanceThreshold;

  // Adjust the thresholds for a vertical swipe.
  $.event.special.swipe.scrollSupressionThreshold = 5;
  $.event.special.swipe.horizontalDistanceThreshold = 1;
  $.event.special.swipe.verticalDistanceThreshold = 128;

  // Listen for the swipe event...
  $('#my_jqm_page div[data-role="header"]').on("swipe", function() {

    // Reset thresholds.
    $.event.special.swipe.scrollSupressionThreshold = _scrollSupressionThreshold;
    $.event.special.swipe.horizontalDistanceThreshold = _horizontalDistanceThreshold;
    $.event.special.swipe.verticalDistanceThreshold = _verticalDistanceThreshold;

    // Take action...
    console.log('Vertical swipe!');

  });
于 2015-08-11T16:35:47.837 回答
0

http://jquerymobile.com/test/docs/api/events.html

我认为有一个 vmouseover,这是一个虚拟鼠标悬停

于 2013-01-19T19:16:46.137 回答