Не срабатывает событие click на iPad и iPhone (iOS)
При разработке сайтов с использованием jQuery, на устройствах с операционной системой iOS (в частности браузер Safari), может возникнуть проблема с обработкой события click, из-за чего владельцам iPhone и iPad будет не доступна часть функционала сайта.
Решить эту проблему можно несколькими способами
Способ 1. Вместо события click, на этих устройствах нужно обрабатывать событие touchstart.
Вот пример реализации этого способа:
var iOS = navigator.userAgent.match(/iPhone|iPad|iPod/i); var event = "click"; if(iOS != null) event = "touchstart"; $(function() { $(document).on(event, ".element_class", function(e) { //действия }); });
Минусом является то, что может не работать прокрутка страницы.
Способ 2. Чтобы срабатывало событие click на iOS, нужно чтобы у элементов присутствовал атрибут onclick. Значение этого атрибута может быть пустым.
<div class="element_class" onclick=""></div>
Способ 3. Самый простой вариант, добавить для элемента CSS-свойство cursor со значением pointer.
.element_class{ cursor: pointer; }
Материалы по теме
При разработке лендингов (Landing Page) довольно часто можно увидеть плавный скролл (прокрутку) к блокам или элементам страницы. Так же, практически на любом сайте можно встретить зафиксированную на странице кнопочку, при клике на которую пользователь быстро возвращается в начало страницы. Сейчас мы и рассмотрим как делаются такие навороты.
Комментарии ВКонтакте