Разница между событиями keydown, keypress и keyup в jQuery заключается в том, за какие действия клавиатуры они отвечают: 13
- KeyDown — нажатие любой клавиши. 3 Это событие срабатывает до того, как браузер обработает клавишу. 3 Если отменить событие keydown, то и действие браузера будет отменено. 3
- Keypress — нажатие клавиши, которая создаёт значение символа. 3 Например, если нажать клавишу «a», то сработает это событие, так как клавиша «a» создаёт значение символа 97. 3 При нажатии клавиши «shift» событие keypress не сработает, так как она не создаёт значение символа. 3
- Keyup — отпускание любой клавиши. 13 Это событие срабатывает после того, как браузер обработает клавишу. 3 Если отменить событие keyup, то действие браузера не будет отменено, даже если отменить само событие. 3
Если все три события привязаны к элементу DOM, то порядок срабатывания будет таким: сначала — keydown, затем — keypress, в конце — keyup. 3 При этом событие keypress считается устаревшим. 4