Наведение курсора мыши и ввод клавиш в javascript

#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 документация