jQuery 인증 코드 60초 카운트다운 실현
1825 단어 전단 학습
lib에서.dom.d.ts에는 setInterval 및 setTimeout 타이머 선언이 있습니다.
declare function setInterval(handler: (...args: any[]) => void, timeout: number): number;
declare function setInterval(handler: any, timeout?: any, ...args: any[]): number;
declare function setTimeout(handler: (...args: any[]) => void, timeout: number): number;
declare function setTimeout(handler: any, timeout?: any, ...args: any[]): number;
타이머의 차이점은 다음과 같다. setInterval은 지정한 시간을 주기로 순환해서 setTimeout을 실행한다. 지정된 시간 후에 한 번만 실행한다.
문자메시지나 메일박스에서 인증코드를 60초 카운트다운하는 기능을 실현할 때 주로 다음과 같은 이해하기 쉬운 방법을 사용하고 setTimeout을 사용한다.
function invokeSettime(obj){
var countdown=60;
settime(obj);
function settime(obj) {
if (countdown == 0) {
$(obj).attr("disabled",false);
$(obj).text(" ");
countdown = 60;
return;
} else {
$(obj).attr("disabled",true);
$(obj).text("(" + countdown + ") s ");
countdown--;
}
setTimeout(function() {
settime(obj) }
,1000)
}
}
하지만 setInterval을 사용하면 좀 더 간결하게 쓸 수 있을 것 같아서 추천합니다.
function resendCpatcha (btnEle, countdown){
btnEle.text(' ' + '(' + countdown + ')');
var t = setInterval(function() {
if (--countdown === 0){
clearInterval(t);
btnEle.attr('disabled',false);
btnEle.text(' ');
} else{
btnEle.attr('disabled',true);
btnEle.text(' ' + '(' + countdown + ')');
}
}, 1000);
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Object 객체 메소드 요약주로 Object 객체의 메서드와 해당 객체가 작성된 인스턴스의 메서드입니다.일반적으로 서로 다른 실례 대상에 사용할 수 있는 방법. 대상의 모든 속성 이름을 가져올 수 있는 그룹을 가져옵니다. 대상의 원형에 있는 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.