移动触摸支持 - 在Closure-library中

时间:2011-04-18 07:00:47

标签: touch mobile-website javascript-framework google-closure-library

我只是想知道我们是否有一个基于闭包库的特定库或框架,它是专为触摸设备(Android或Ipad)设计的。我已经使用封闭库创建了我的网络应用程序,现在希望保持移动触摸设备或平板电脑的一致性。

还有许多其他库的其他框架或插件,例如: http://www.sencha.com/products/touch/ - (Ext.js) http://jqtouch.com/ - (jquery)

我们是否有类似闭包库的东西。 有人可以帮我这个。

2 个答案:

答案 0 :(得分:2)

据我所知,已经定义了普通的TOUCH事件

/**
* Constants for event names.
* @enum {string}
*/
goog.events.EventType = {
    ...
    // WebKit touch events.
    TOUCHSTART: 'touchstart',
    TOUCHMOVE: 'touchmove',
    TOUCHEND: 'touchend',
    TOUCHCANCEL: 'touchcancel',

}

但是没有手势识别器。

如果使用手势Webkit(Safari)触发,则必须创建自己的外部文件。

https://developer.apple.com/library/iad/documentation/UserExperience/Reference/GestureEventClassReference/index.html#//apple_ref/javascript/cl/GestureEvent

答案 1 :(得分:1)

如果您从jQuery Mobile的网站下载触摸库。只使用他们的触摸库构建jQuery Mobile。将其导入您的项目。然后有一张像我一样的地图...

  var hasTouch = 'ontouchstart' in window;

  var humanEvents = {

    DOWN: (hasTouch) ? goog.events.EventType.TOUCHSTART : goog.events.EventType.MOUSEDOWN,
    OVER: (hasTouch) ? goog.events.EventType.TOUCHSTART : goog.events.EventType.MOUSEOVER,
    MOVE: (hasTouch) ? goog.events.EventType.TOUCHMOVE : goog.events.EventType.MOUSEMOVE,
    UP: (hasTouch) ? goog.events.EventType.TOUCHEND : goog.events.EventType.MOUSEUP,
    OUT: (hasTouch) ? goog.events.EventType.TOUCHEND : goog.events.EventType.MOUSEOUT,
    CLICK: (hasTouch) ? "tap" : goog.events.EventType.CLICK

  };