Intereting Posts
SmoothScrollToPosition не работает? Пожалуйста, объясните Array Adapters и их назначение. Еще лучше Получите уведомление о отправленном письме в onActivityResult «Android» Как я могу предложить функцию для команды Google Android? Почему центр внимания в моей сцене three.js остается в центре внимания камеры, но только в Chrome для Android? Ядро iOS / Android приложение для Windows Phone Как установить layout_gravity программно? Android java.lang.RuntimeException: не удалось создать экземпляр активности ComponentInfo Gradle: как создать два приложения для каждого аромата с различными папками с ресурсами: Ошибка при установке HAXM, VT-X не работает Внедрение масштабирования и перетаскивания с использованием сборки Android в прослушивании жестов и прослушивании шкалы Как решить «Не удалось подключиться» в Google+ для входа в Android? Создайте собственный lockscreen для Android 4.0 или более поздней версии? ViewPagers в ListView, показывающий элементы пустого списка У TextView масштабируется его размер шрифта, чтобы заполнить родительский элемент?

Использование jquery mobile tap вместо щелчка

Я делаю веб-приложение, которое нужно запускать как на мобильных устройствах, так и на немобильных устройствах. В моем приложении у меня есть несколько значков, которые пользователь может щелкнуть, чтобы отправить сообщение на сервер с помощью веб-карт.

Мой код выглядит примерно так:

$('.button-container').on('tap', '.sender', function() { socket.send('Message'); }); 

Использование «tap» вместо «click» выполняется для поддержки iPad (и других мобильных устройств), но поскольку это похоже на хак, у меня есть несколько проблем.

«Tap», похоже, работает с моими тестовыми браузерами, Safari 7, Chrome 34 и Firefox 26 (все не мобильные), но как поддерживает другие немобильные браузеры?

Также есть ли какие-либо известные проблемы с использованием «нажмите» над «кликом» для немобильных браузеров?

Solutions Collecting From Web of "Использование jquery mobile tap вместо щелчка"

Специальные события jQuery Mobile, т. taphold vclick , taphold , vclick … и т. Д., Первоначально являются событиями touch и mouse, преобразованными в специальные события.

Например, tap и vclick – это touchstart / touchend или mousedown / mouseup .

При загрузке jQuery Mobile он проверяет, поддерживает ли браузер, и соответственно события преобразуются в события мыши или события касания .

Вы можете переключаться между событиями в зависимости от поддержки сенсорного экрана браузера. Для не-сенсорных браузеров используйте click и те, которые поддерживают touch , используйте tap .

При запуске проверьте $.support.touch , он вернет true ( tap ) или false ( click ).

 var custom_event = $.support.touch ? "tap" : "click"; $(document).on(custom_event, "element", function () { /* code */ }); 

Проверьте приведенную ниже демонстрацию на своем рабочем столе и на мобильном устройстве.

демонстрация