#javascript #event-listener
Вопрос:
Я изучаю javascript и запутался в этих событиях. В чем основное различие между click
mouseup
и keyup
внутри eventListener
?
Например, когда я посещаю веб-страницу и собираюсь что-то отправить, я могу щелкнуть по ней левой кнопкой мыши или просто нажать кнопку «ввод» на клавиатуре. И то, и другое может вызвать щелчок. Что eventListener
я должен использовать в разных обстоятельствах? Большое спасибо.
Ответ №1:
Разница click
в том, что событие срабатывает только тогда, когда вы нажимаете кнопку мыши на определенном элементе и отпускаете кнопку, все еще находясь на том же элементе. mousedown
и mouseup
запускайте каждый раз, когда вы нажимаете или отпускаете кнопку мыши в любом месте окна.
Нажатие enter
на клавиатуре не вызывает click
.
ИМО лучше всего использовать собственную кнопку отправки и прослушивать submit
событие form
элемента. Пусть браузер обрабатывает отправку изначально. Если вы не хотите этого делать, вам решать, какие события вы хотите слушать. Обычно click
touchend
, и в случае формы входа в систему , возможно keyup
enter
, при вводе пароля.
Ответ №2:
keyup
срабатывает при нажатии клавиши, технически событие срабатывает при нажатии клавиши. документация
mouseup
срабатывает, когда мышь (или трекпад) перестраивается после ее нажатия ( mousedown
) документация
click
= mousedown
mouseup
документация