phonegap:可以从Javascript中检测swipeLeft和SwipeRight触摸吗?

时间:2012-12-04 10:39:10

标签: javascript android cordova

我问一下Phonegap应用程序是否能够识别Javascript中的swipeLeft和SwipeRight相关事件。

5 个答案:

答案 0 :(得分:5)

与普通移动网站相比,Phonegap不再为您提供触摸事件。即它只是包装UIWebView(在iOS上)或其他平台上的等价物。

触摸移动浏览器中的事件包括touchstarttouchendtouchmove等。

没有任何花哨的滑动事件,或双击事件,或任何类似移动浏览器中本机实现的事件。

但是,您可以将javascript与库存touchstarttouchend事件等结合使用来模拟那些更复杂的事件。

幸运的是,您不需要自己编写这些事件,因为几乎每个移动框架都为您完成了这些。其他人提到了一些处理触摸事件的库。

我自己,我倾向于使用具有swipeleftswiperight事件的jQuery Mobile,以及其他事件。

http://jquerymobile.com/demos/1.2.0/docs/api/events.html

如果您不想,您甚至不必使用完整的jQuery Mobile框架。如果需要,您可以包括他们的触摸事件处理程序。

答案 1 :(得分:4)

我们使用quo.js。它是处理多点触摸事件等的轻量级框架。

答案 2 :(得分:2)

使用this一个在ios和android中使用phonegap。

 $("#test").swipe( {
    click:function(event, target) {
      log("click from callback");
    },
    swipe:function(event, direction, distance, duration, fingerCount) {
      log("swipe from callback");
    },
    swipeLeft:function(event, distance, duration, fingerCount) {
      log("swipeLeft from callback");
    },
    swipeRight:function(event, distance, duration, fingerCount) {
      log("swipeRight from callback");
    },
    swipeUp:function(event, distance, duration, fingerCount) {
      log("swipeUp from callback");
    },
    swipeDown:function(event, distance, duration, fingerCount) {
      log("swipeDown from callback");
    },
    swipeStatus:function(event, phase, direction, distance, duration, fingers) {
        log("swipeStatus from callback");
    },
    pinchIn:function(event, direction, distance, duration, fingerCount, pinchZoom) {
      log("pinchIn from callback");
    },
    pinchOut:function(event, direction, distance, duration, fingerCount, pinchZoom) {
                    log("pinchOut from callback");
    },
    pinchStatus:function(event, phase, direction, distance , duration , fingerCount, pinchZoom) {
                    log("pinchStatus from callback");
    },
                fingers:$.fn.swipe.fingers.ALL 
  });

答案 3 :(得分:0)

Zepto为swipeLeft和swipeRight以及其他许多人提供触摸事件:http://zeptojs.com/#Touch%20events

答案 4 :(得分:0)

用于滑动功能的优秀jquery插件TouchSwipe-Jquery-Plugin