jQuery - событие двойного клика мышью. Обработчик .dblclick()
.dblclick() – устанавливает обработчик двойного “клика” мышью по элементу, либо, запускает это событие.
Метод может использоваться в трёх вариациях.
.dblclick( handler )
- handler – функция, которая будет установлена в качестве обработчика.
.dblclick( [eventData ], handler )
- eventData – объект содержащий данные, для передачи в обработчик. Должны быть представлены в формате {fName1:value1, fName2:value2, …};
- handler – функция, которая будет установлена в качестве обработчика.
.dblclick()
Вызывает событие dblclick
, у выбранных элементов страницы.
В первых двух вариантах, этот метод является сокращенной версией .on( "dblclick", handler ), а в третьем – .trigger( “dblclick” ).
Событие dblclick отправляется элементу, когда пользователь выполняет двойной щелчок на нем. Событие сработает на любом html-элементе, на который оно может быть назначено.
Для примера рассмотрим следующий html-код:
<div id="target"> Выполните двойной клик по этому элементу </div> <div id="other"> Запустить обработчик </div>
Установим обработчик события dblclick элементу с идентификатором target:
$( "#target" ).dblclick(function() { alert( "Произошло событие .dblclick()" ); });
Если сделать двойной клик по элементу target появится сообщение: “Произошло событие .dblclick()”.
Чтобы вызвать событие вручную (без двойного клика по элементу), установим обработчик click на элемент с идентификатором other и вызовем событие dblclick без аргументов:
$( "#other" ).click(function() { $( "#target" ).dblclick(); });
Кликнув один раз мышью по элементу с идентификатором other мы также увидим сообщение “Произошло событие .dblclick()”
Событие dblclick запускается только после выполнения следующей цепочки:
- Кнопка мыши нажата, когда указатель находится внутри элемента.
- Кнопка мыши отпущена, когда указатель находится внутри элемента.
- Кнопка мыши снова нажата, когда указатель находится внутри элемента, в пределах временного окна, которое зависит от системы.
- Кнопка мыши отпущена, когда указатель находится внутри элемента.
Совместно устанавливать событие click и dbclick для одного элемента не рекомендуется, так как браузеры по разному могут обрабатывать такую последовательность. В некоторых случаях запустятся оба события, а в некоторых только одно. К томуже чувствительность к двойному клику - максимальное время между кликами, зависит от настроек браузера, операционной системы и может регулироваться установками пользователя.
Так как метод .dblclick()
является сокращенной версией .on( "dblclick", handler )
, он может быть удален с помощью .off( "dblclick" ).
Дата публикации: