«Щелчок» - это всего лишь полный цикл «mousedown» и «mouseup».Вы не можете иметь одно без другого.
Чтобы ваш код узнал разницу, вам понадобится переменная, которая отслеживает ваши намерения.
- Создайте переменную, чтобы отслеживать ваши намерения - по умолчанию она «щелкает».
var intention = "click";
В функции mousedown приостановите анимацию и запустите таймер.Мы будем использовать этот таймер для определения того, как долго мышь не работает (т. Е. Если она длится более секунды, это не щелчок, и вы просто хотите запустить mouseup)
var detectIntention = setTimeout(function(){
intention = "mouseup";
})
В вашей функции мыши отмените это время ожидания.Если после нескольких мс вызывается указатель мыши, то вы хотите сделать клик.
clearTimeout(detectIntention);
if (intention === "mouseup") {
// do mouseup stuff
}
// reset intention
intention = click;
Отметьте в своей функции клика, что вы хотите сделать клик;
if (intention === "click") {
// do click stuff
}