Обработка события click или touchstart

Широкое применение мобильных устройств для доступа в интернет накладывает свои специфические требования на разработку веб-сайтов. Привычный обработчик onclick может срабатывать совместно с ontouchstart, а может не срабатывать вовсе на мобильном устройстве.

Но вам скорее всего нужно фиксировать лишь факт нажатия пользователя на элемент, причем однократно.

Наверное, стоит начать с того как отличить какое событие произошло на самом деле, это можно подсмотреть в атрибутах объекта event:

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

Функция event.stopPropogation(), остановит передачу обработки в родительский контейнер и нам не подходит.

Функция event.stopImmediatePropagation(), прекратит обработку текущего типа события, если обработчиков несколько, но события другого типа сработают.

Можно использовать какую то глобальную переменную или добавить признак в объект event, чтобы прочитать его в следующем обработчике. Это рабочие варианты, но есть более элегантное решение:

В большинстве случаев это наиболее простой вариант.

Мало букафф? Читайте есчо !

Встраиваем в форму drug-n-drop загрузчик файлов

Май 8, 2017 г.

Загрузка файлов, наверное, самая сложная тема при работе с формами в веб-приложениях. Стандартный элемент формы <input> для загрузки файла, его внешний ...

Читать

Украшательства на сайте : делаем надпись поверх картинки

Март 13, 2013 г.

Долгая, вообще, история с картинками. Хорошо, если есть шаблон, где предусмотрены позиции картинок, может быть какой то слайдер или галерея. А все картинки ...

Читать

Программируем галерею в Drupal 7

Сентябрь 2, 2015 г.

Хотите сделать галерею своими руками, без сторонних модулей в Drupal? Тогда читайте дальше. Настроим поле для галереи Для начала нам надо определиться, ...

Читать

Чтение GET параметров в JS

Октябрь 7, 2018 г.

Как прочитать GET параметры на стороне клиента из кода на javascript? Бывают ситуации, когда нужно что то сделать из JS в зависимости от переданных параметров ...

Читать
 

Комментарии к «Обработка события click или touchstart»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: