Установка разового обработчика событий .one()

.one() — устанавливает обработчик события выбранным элементам страницы. Особенностью метода является то, что обработчик будет вызван не более одного раза, на каждом из элементов.

  • evenst — тип(ы) обрабатываемых событий. Например «click», «resize» и т.д. Может быть указано сразу несколько типов, разделенных пробелами, а так же, могут быть указаны пространства имен;
  • data — данные передаваемые в обработчик в переменную event.data когда выполняется событие;
  • handler — функция, которая будет установлена в качестве обработчика. Значение false является кратким аналогом для функции возвращающей return false.

  • evenst — тип(ы) обрабатываемых событий. Например «click», «resize» и т.д. Может быть указано сразу несколько типов, разделенных пробелами, а так же, могут быть указаны пространства имен;
  • selector — строка, селектор, для фильтрации потомков выбранных элементов, для которых вызывается событие. Если селектор не указан или равен null, то событие всегда срабатывает при достижении выбранных элементов;
  • data — данные передаваемые в обработчик в переменную event.data когда выполняется событие;
  • handler — функция, которая будет установлена в качестве обработчика. Значение false является кратким аналогом для функции возвращающей return false.

  • evenst — тип(ы) обрабатываемых событий. Например «click», «resize» и т.д. Может быть указано сразу несколько типов, разделенных пробелами, а так же, могут быть указаны пространства имен;
  • selector — строка, селектор, для фильтрации потомков выбранных элементов, для которых вызывается событие. Если селектор не указан или равен null, то событие всегда срабатывает при достижении выбранных элементов;
  • data — данные передаваемые в обработчик в переменную event.data когда выполняется событие.

Метод .one() идентичен .on(), с одним отличием — обработчик будет автоматически откреплён от элемента после первой отработки, например:

При первом клике по элементу будет выведено сообщение, однако последующие клики не приведут ни к каким действиям. Этот код можно переписать используя обработчик .on():

Тут метод .off() производит такой же эффект отключения обработчика.

Пример

See the Pen XeqMLg by Aleksei (@AmateR) on CodePen.0

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *