jQuery Mobile - плохое поведение при нажатии на форму - PullRequest
1 голос
/ 19 апреля 2011

Я создаю приложение Rails 3.03 с использованием jQuery Mobile 1.0a3 (& jQuery 1.5) для отображения мобильных представлений. Я смотрю на это в Safari на старом iPhone 1-го поколения.

У меня есть collection_select в одной из форм. Это отображает сенсорный элемент управления, который выглядит как кнопка, которая открывает всплывающий элемент выбора со списком, так что пользователь может выбрать параметр / значение. Пока все хорошо.

Проблема ...

Если я нажму на визуализированную кнопку одним быстрым нажатием, список выбора появится, а затем сразу исчезнет (без выбранной опции / значения). Конечно, из-за этого пользовательский интерфейс выглядит испорченным или сложным в использовании. (Интересно, это может быть проблема двойного или призрачного касания.)

Хорошая новость заключается в том, что если я нажму кнопку визуализации примерно на 500 мс, а затем отпущу, список выбора появится и останется, чтобы пользователь мог сделать выбор (поведение, которое я хочу).

Я не делаю ничего особенного с Javascript, просто использую jQuery Mobile «из коробки». Я не уверен, что мне нужно что-то делать с обработчиками событий касания, значениями по умолчанию или чем-то еще. Может быть, это мой старый телефон ...

Есть идеи?

Обновление

Я получил этот полезный ответ от Антонио Алонсо из Embarcadero Technologies, который решил мою проблему. Спасибо Антонио!

"Я рекомендую вам обновить систему до последней версии 1.0a4.1 с jQuery 1.5.2. Не забудьте обновить все файлы, javascript, css и изображения. И снова просмотрите документацию, потому что некоторые вещи изменились . Теперь есть виртуальные события, такие как vclick.

http://jquerymobile.com/blog/2011/03/31/jquery-mobile-alpha-4-released/

http://jquerymobile.com/blog/2011/04/07/jquery-alpha-4-1-maintenance-release/

http://jquerymobile.com/demos/1.0a4.1/

Я не знаю, решит ли это вашу проблему, но исправляет множество ошибок из предыдущей версии. "

1 Ответ

3 голосов
/ 19 апреля 2011

Первое, что нужно попробовать - это перейти на jQuery Mobile 1.0a4.1, он включает улучшенную обработку событий для событий щелчка / касания, чтобы точно решить проблему такого рода.

Он также включает в себя новыйвиртуальное событие 'vclick', которое быстро решило все проблемы, возникающие при нажатии кнопок.

Удачи.:)

...