Не срабатывает событие click на iPad и iPhone (iOS)
8 мая 2018 17:53:00
22333 просмотра
При разработке сайтов с использованием 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; }
Материалы по теме
9 февраля 2020 18:30:24
Многоточие в конце строки на CSS
Рассмотрим два варианта как можно при помощи CSS обрезать длинный однострочный или многострочный текст.
24 марта 2018 14:00:56
Как защитить текст на сайте от копирования
Если у вас есть свой сайт, на котором вы пишите свои уникальные тексты и вы не хотите, чтобы ваши труды копировали недобросовестные владельцы других сайтов, то эта статья поможет вам чуть-чуть усложнить им задачу. Почему чуть-чуть? Да потому что, как ни крути, с любого сайта можно скопировать любой текст и скачать любое фото.