Не срабатывает событие click на iPad и iPhone (iOS)
8 мая 2018 17:53:00
23813 просмотров
При разработке сайтов с использованием 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; }
Материалы по теме
16 марта 2018 11:38:03
Запрещаем ввод любых символов кроме цифр в input
Очень часто для полей нужно запретить ввод любых символов кроме цифр. Это мы сейчас и сделаем при помощи библиотеки jQuery.
24 февраля 2018 15:04:00
Стилизация placeholder на чистом CSS
Атрибут placeholder используется в полях форм и представляет собой некую подсказку для пользователей. Иногда приходится стилизовать эту подсказку под дизайн сайта, поэтому в этой статье мы рассмотрим самый простой и самый удобный способ стилизации placeholder с использованием только CSS.