У меня есть приложение, которое обрабатывает много событий jQuery, и мне нужен способ отличить простые клики от выбора текста.jQuery: временно отключить прослушиватель кликов
Я хотел бы отключить все события щелчка, когда обнаруживаю выбор текста. Это возможно? Я подумал о том, чтобы сделать это вот так:
// User presses mouse button
$(window).on('mousedown', function(){
// User moves mouse while pressing mouse button => selection
this.one('mousemove', function(){
// Disable click listener temporarily
$.fn.click = null;
// User releases mouse button => end of selection
}).on('mouseup', function(){
// Stop mousemove event & restore click listener
this.off('mousemove');
$.fn.click = function(){};
});
});
Код, очевидно, не будет работать, но служит для иллюстрации моей цели. Кто-нибудь знает о хорошем способе достижения этого?
Почему вы хотите сделать отключить клик слушателя? Если это так, используйте 'event.preventDefault()' – Mouser
Поскольку событие click будет срабатывать независимо от намерения пользователя, что может быть простым выбором текста. – notyourtype
Почему в первую очередь возникает событие щелчка? – Mouser