#touch #mobile-website #javascript-framework #google-closure-library
#сенсорный #мобильный-веб-сайт #javascript-framework #google-закрытие-библиотека
Вопрос:
Мне просто интересно, есть ли у нас определенная библиотека или фреймворк, построенный на closure-library, который специально разработан для сенсорных устройств (Android или Ipad). У меня уже есть веб-приложение, использующее closure-library, теперь я хочу поддерживать согласованность для мобильных сенсорных устройств или планшетов.
Существует множество других фреймворков или плагинов для других библиотек, таких как:http://www.sencha.com/products/touch / — (Ext.js) http://jqtouch.com / — (jquery)
Есть ли у нас что-то подобное для closure-library. Может кто-нибудь, пожалуйста, помочь мне в этом.
Ответ №1:
Насколько я знаю, события простого КАСАНИЯ уже определены
/**
* Constants for event names.
* @enum {string}
*/
goog.events.EventType = {
...
// WebKit touch events.
TOUCHSTART: 'touchstart',
TOUCHMOVE: 'touchmove',
TOUCHEND: 'touchend',
TOUCHCANCEL: 'touchcancel',
}
Но нет средства распознавания жестов.
Если вы используете веб-набор жестов (Safari), вам придется создать свой собственный внешний файл.
Ответ №2:
Если вы загружаете библиотеку touch с сайта jQueryMobile. Просто создайте jQueryMobile только с их библиотекой touch. Импортируйте это в свой проект. Тогда создайте карту, как я сделал…
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
};