[javascript] 값이 변경되면 <input type =“number”/>가 발생하는 이벤트는 무엇입니까?

<input type="number" />위 / 아래 화살표를 클릭 할 때 HTML5 요소가 발생 하는 이벤트를 아는 사람이 있는지 궁금합니다 .

숫자 입력 예

onblur포커스가 입력 필드를 벗어날 때 이미 for를 사용하고 있습니다.



답변

change 필드의 값이 변경 될 때 시작되는 이벤트입니다.

HTML5 이벤트 input도 발생 한다고 생각합니다 .


답변

jQuery의 경우 다음 코드가 Chrome에서 키보드 입력, 마우스 휠 변경 및 버튼 클릭을 다루고 Firefox에서 키보드 입력을 처리한다는 것을 발견했습니다.

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


답변

나는 것을 발견 onkeyup하고 onchange버튼을 클릭하고 마우스 휠 스크롤, 위로 아래로 키를 누를 때 화살표, 크롬 (19)이 핸들 직접 입력 한 값에 덮여 다.

onchangeChrome에서는 단독으로 충분하지만 필드를 텍스트 상자로만 렌더링하는 다른 브라우저 onkeyup에는 새 값을 읽는 데 완벽하게 작동 하는 바인딩이 필요합니다 .

mousewheel이벤트를 개별적으로 바인딩하는 것은 덜 성공적이었습니다. 이벤트가 너무 일찍 시작되어 (필드 값이 업데이트되기 전에) 항상 필드의 이전 값을 제공했습니다.


답변

onchange흐림 이벤트가 발생하지만 oninput이벤트가 발생 당신이 입력. oninput이벤트에 타이머를 설정 onchange하고 사용자가 1 초 동안 입력을 중지했을 때 이벤트를 시작하고 싶을 수 있습니다 .


답변

있다 가장자리 버그 현재 숫자 입력에 화살표 키를 사용하는 경우, 소성에서의 변화 또는 입력을 방지.


답변