Страницы

Поиск по вопросам

вторник, 21 мая 2019 г.

Как вкл/выкл отслеживание события если сработало другое?

Вот мой пример, как отменить mouseover если кнопку мыши отпустили?
var mouseOverEventListener; $('#pixel_canvas').mousedown(function () { mouseOverEventListener = $('#pixel_canvas').on('mouseover', 'td', function () { $( this ).css('background-color', 'red'); }); }); $('#pixel_canvas').mouseup(function () { $('#pixel_canvas').off('mouseover', mouseOverEventListener) }); tr { height: 15px; } td { width: 15px; } tr:nth-child(odd) td:nth-child(odd), tr:nth-child(even) td:nth-child(even) { background-color: #eaeaea; }



Ответ

"Event preventDefault" - Метод объекта позволяет предотвратить выполнение стандартного действия.
Mousedown - Событие срабатывает, когда кнопка нажата над элементом.
Mouseup - Событие срабатывает, когда кнопка мыши отпущена над элементом.
Mouseover - Событие срабатывает, когда мышь появилась над элементом.
Off - Удаляет обработчики событий, назначенные методом ".on"
$('#pixel_canvas').mousedown( function(e) { e.preventDefault(); $('#pixel_canvas').on('mouseover', 'td', function () { $( this ).css('background-color', 'red'); }); }).mouseup(function(){ $('#pixel_canvas').off('mouseover' ) }); tr { height: 15px; } td { width: 15px; } tr:nth-child(odd) td:nth-child(odd), tr:nth-child(even) td:nth-child(even) { background-color: #eaeaea; }


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

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