Справочник API
.dblclick() в jQuery
Содержание статьи
-
Категории: Events › Mouse Events
Устанавливает (или вызывает) обработчики JavaScript события dblclick (двойной щелчок) для всех элементов набора jQuery.
Синтаксис и описание:
Добавлено в jQuery 1.0.dblclick( handler( eventObject ) )
Добавлено в jQuery 1.4.3.dblclick( [ eventData ,] handler( eventObject ) )
Добавлено в jQuery 1.0.dblclick( )
Команда .dblclick() — сокращённый вариант события dblclick (двойной щелчок мышью): с обработчиком она равносильна .bind('dblclick', handler), без аргументов — искусственно вызывает уже установленные обработчики, что равносильно .trigger('dblclick').
Возвращаемое значение: (объект) Набор jQuery.
Параметры:
eventData – (объект) Данные, доступные обработчику через event.data.
handler( eventObject ) – Функция-обработчик события dblclick. Контекст this — текущий DOM-элемент.
Примечание:
Не рекомендуется вешать обработчики и на click, и на dblclick одного элемента: пороговое время между кликами, при котором браузер и ОС распознают двойной щелчок, различается, поэтому click почти всегда успевает сработать первым и обработчики начинают конфликтовать по логике.
Примечание:
На сенсорных экранах событие dblclick эмулируется браузером не всегда предсказуемо (двойное касание часто перехватывается жестами масштабирования), поэтому для мобильных интерфейсов стоит предусмотреть альтернативный сценарий без двойного клика.
В jQuery 3.x и 4.0:
Шорткат .dblclick() deprecated с jQuery 3.3, но не удалён — работает и в 3.7.1, и в 4.0. Замена:
.on("dblclick", handler)вместо .dblclick(handler),.trigger("dblclick")вместо .dblclick().
Примеры:
Устаревший, но рабочий вариант: по двойному клику на элементе переключить класс.
$('div.card').dblclick(function() { $(this).toggleClass('expanded'); });Современный вариант через .on().
$('div.card').on('dblclick', function() { $(this).toggleClass('expanded'); });Искусственный вызов события, например из другого обработчика.
$('#zoom-reset').on('click', function() { $('#chart').trigger('dblclick'); // сбросить масштаб, как по двойному клику });