사용자가 입력 필드에서 수량을 변경할 때 특정 코드가 실행되기를 원합니다. 하지만 사용자가 작은 위아래 화살표를 사용하여 빠르게 양을 늘리거나 줄이면됩니다. 5 번을 누르는 것과 같이 5 번 누르십시오. 코드를 5 번 실행하고 싶지 않습니다. 타이머를 설정하고 싶습니다. on change 이벤트가 감지되면 1 초 동안 기다리거나 on 변경이 중지 될 때까지 대기합니다. 그런 다음 최신 값을 가져옵니다.jquery onchange set timeout
그래서 짧은 시간 간격으로 여러 변경 사항을 감지하는 방법이 있습니다. 그런 다음 변경 사항이 발생하면 x 시간이 지나면 더 이상 변경이 발생하지 않습니다. 뭔가해라.
$("#quantity").on('change',function(){
setTimeout(function(){
console.log("fired");
}, 1000);
});
내 코드가 해고를 지연시키고 있습니다.
그럼 어떻게 할 수 있습니까? 이것은 우리가 설정 한 경우를 확인
var timeoutId = 0;
object.dom.input.addEventListener('input',function() {
clearTimeout(timeoutId);
// do stuff
// Fire our onchange event
if (this.delayOnChange > 0) {
timeoutId = setTimeout(function() { this.onchange() }, this.delayOnChange);
} else {
this.onchange();
}
}
},false);
을 :
NVM 사람들이 여기에 답변과 중복 질문을 찾았습니다. http://stackoverflow.com/questions/9424752/jquery-change-with-delay – codenoob
죄송합니다. 내 대답을 게시 할 때까지 귀하의 의견을 보지 못했습니다. 아마 어쨌든 도움이 될 것입니다 ... – rasmeister