Какие события имеет значение <input type = "number" /"> fire при изменении значения?

Просто интересно, знает ли кто, какие события вызывает элемент HTML5 <input type="number" /> при нажатии стрелок вверх/вниз:

example number input

Я уже использую onblur, когда фокус покидает поле ввода.

Ответ 1

change будет событием, которое будет запущено при изменении значения поля.

Я думаю, что событие HTML5 input также срабатывает.

Ответ 2

Я обнаружил, что для jQuery следующий код охватывает ввод с клавиатуры, изменения мыши и нажатия кнопок в Chrome, а также обрабатывает ввод с клавиатуры в Firefox

$("input[type=number]").bind('keyup input', function(){
    // handle event
});

Ответ 3

Я обнаружил, что onkeyup и onchange охватывают все в Chrome 19. Это обрабатывает прямой ввод значения, стрелку вниз вниз, нажатие кнопок и прокрутку колесика мыши.

onchange будет достаточно в Chrome, но другие браузеры, которые отображают только поле как текстовое поле, нуждаются в привязке onkeyup, которая отлично работает для чтения нового значения.

Связывание события mousewheel по отдельности было менее успешным. Событие срабатывало слишком рано - до того, как значение поля было обновлено - и поэтому всегда давало поле предыдущее значение

Ответ 4

Событие onchange срабатывает при размытии, но событие oninput срабатывает при вводе. Возможно, вам захочется поставить таймер на событие oninput и запустить ваше событие onchange, когда пользователь перестанет печатать на секунду?