1

Я пишу читатель веб-документов с JQM. Я не хочу, чтобы мои пользователей непрерывной прокрутки вправо-влево при чтении, так что мое окно просмотра:jQuery mobile: изменить размер шрифта на pinch-in/pinch-out?

<META NAME='viewport' CONTENT='width=device-width; initial-scale=1.0; maximum-scale=1.0; minimum-scale=1.0; user-scalable=1;' /> 

Хотя, я знаю пользователь предпочтение с размером шрифта может меняться из-за различные визуальные навыки .. Итак, я подумал, что было бы неплохо уменьшить размер шрифта при многократном сжатии («щепотку») и увеличить размер шрифта при многократном приближении («pinch-out») ...

Возможно ли это? Нужна ли мне внешняя библиотека, рядом с JQM?

+0

похоже, что вы ищете способ обнаружения жестов, не так ли? если да, то просто взгляните на эту тему: [http://stackoverflow.com/questions/11183174/simplest-way-to-detect-a-pinch](http://stackoverflow.com/questions/11183174/ простейший путь для обнаружения-a-pinch), а для остальных вам просто нужно изменить фактический размер em. проверьте там: [изменить CSS с помощью JavaScript] (http://www.w3.org/wiki/Dynamic_style_-_manipulating_CSS_with_JavaScript#Style_Sheet_Properties) С уважением, Sullivan – Sullivan

ответ

6

Возможно, на jQuery Mobile, но вам потребуется использовать стороннюю реализацию под названием hammer.js.

Он поддерживает большое количество жестов, такие как:

  • держать
  • водопроводной
  • DoubleTap
  • сопротивление, dragstart, dragend, dragup, dragdown, dragleft, dragright
  • салфетки, swipeup , swipedown, swipeleft, swiperight
  • transform, transformstart, transformend
  • повернуть
  • пинча, pinchin, выклинивания
  • ощупь (начинает обнаружение жест) (заканчивается обнаружение жест)
  • выпуск

Пример:

$('#test_el').hammer().on("pinchin", ".nested_el", function(event) { 
    console.log(this, event); 
}); 

$('#test_el').hammer().on("pinchout", ".nested_el", function(event) { 
    console.log(this, event); 
}); 

Он работает с JQuery Mobile, и это важно. Но вы должны подумать о какой-то другой идее или, по крайней мере, о другой идее для устройств Android 2.X, потому что эта платформа не поддерживает мультитач-события.

Есть также некоторые другие сторонние реализации, такие как Touchy. К сожалению, Touchy поддерживает только щепотку.

+0

Спасибо ... Однако тем временем я нашел библиотеку «quojs» (http://quojs.tapquo.com/), который отлично работает для меня ... – MarcoS

Смежные вопросы