@Hellas

Почему не стоит реализовывать взаимодействие с элементами при onmousedown?

Например, кнопка срабатывает сразу при нажатии левой кнопкой мыши или переход по ссылке осуществляется ещё до того, как пользователь отпустит кнопку мыши.
  • Вопрос задан
  • 182 просмотра
Решения вопроса 3
@GreatRash
Такой подход урезает функционал браузера, например во всех современных браузерах можно перетаскивать ссылки, а подобным подходом вы ограничиваете эту возможность. Плюс элементарное уважение к пользователю - он может передумать кликать в кнопку и отпустить кнопку мыши за пределами ссылки, в таком случае перехода не произойдёт.
Ответ написан
@pudovMaxim
web-developer
Потому что есть сутации, когда нажимаешь кнопку, передумываешь, и зажатую мышь переносишь на неактивное поле, отпускаешь.
Ответ написан
KazeZlat
@KazeZlat
Погромист-затейник
Потому что не мышью единой. Если вы обрабатываете onmousedown, то вам еще нужно и о других позаботиться, ontouchstart, и прочих. Клик более универсален в этом плане, к тому же, не каждый пользователь кликает на ссылку с желанием по ней перейти. Возможно, он промахнулся, а может хочет ее перетянуть. Не пытайтесь оптимизировать то, что не требует оптимизации, разница между onmousedown и onclick, если пользователь желает перейти по ссылке настолько незначительна, что ее никто не заметит.
Другое дело, если вам необходимо обработать именно onmousedown. К примеру, для реализации долгого клика мышью, который бы открывал ваше контекстное меню. Вот именно для таких случаев это событие и существует.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы