тип мониторинга = номер? - PullRequest
3 голосов
/ 06 мая 2011

Я использую html5 вход type="number". Я хочу контролировать этот вход для изменения, но:

  • потому что в браузерах, которые его поддерживают, он получает управление вращением, я не могу просто контролировать .keyup,
  • потому что я не хочу ждать, пока он потеряет фокус, я не могу просто следить .change.

Как я могу следить за этим, чтобы я ловил все случаи, когда его значение изменяется?

Ответы [ 2 ]

1 голос
/ 06 мая 2011

После просмотра некоторых вопросов на этом сайте и использования плагина mousewheel я получил

$('#spinbox').bind('click change keyup mousewheel', function() {
  //10 ms timeout is for mousewheel otherwise you get the previous value
  var box = this;
  setTimeout(function() {console.log($(box).val());}, 10);
});

Так что вам нужно следить за

  • Нажмите: нажав на элементы управления
  • изменение: запасной вариант
  • keyup: для ввода значения
  • колесико мыши: хммм ... интересно?
0 голосов
/ 06 мая 2011

См .: Элемент управления Spinbox с номером HTML5 не вызывает событие изменения?

Для совместимости вы можете использовать oninput и onkeydown.

...