当前位置:Gxlcms > html代码 > jQuery手机验证码倒计时效果

jQuery手机验证码倒计时效果

时间:2021-07-01 10:21:17 帮助过:104人阅读

比较常用的一种效果,当点击获取手机验证码之后,会有一个倒计时的效果,一般是60秒开始到0就变为“获取验证码”,下面以5秒动画图片示例:

jQuery手机验证码倒计时效果


HTML代码

<ul class="ulist">
<li class="group">
<label class="label" for="phone">联系电话:</label>
<div class="controls">
<input type="text" id="phone" class="txt">
</div>
</li>
<li class="group">
<label class="label" for="code">验证码:</label>
<div class="controls">
<input type="text" id="code" class="txt">
<button class="btn btn-small get-code" onclick="getCode(this)" id="J_getCode">获取验证码</button>
<button class="btn btn-small reset-code" id="J_resetCode" style="display:none;"><span id="J_second">60</span>秒后重发</button>
</div>
</li>
</ul>
jQuery代码:


/*获取验证码*/
var isPhone = 1;
function getCode(e){
	checkPhone(); //验证手机号码
	if(isPhone){
		resetCode(); //倒计时
	}else{
		$('#phone').focus();
	}
	
}
//验证手机号码
function checkPhone(){
	var phone = $('#phone').val();
	var pattern = /^1[0-9]{10}$/;
	isPhone = 1;
	if(phone == '') {
		alert('请输入手机号码');
		isPhone = 0;
		return;
	}
	if(!pattern.test(phone)){
		alert('请输入正确的手机号码');
		isPhone = 0;
		return;
	}
}
//倒计时
function resetCode(){
	$('#J_getCode').hide();
	$('#J_second').html('5');
	$('#J_resetCode').show();
	var second = 5;
	var timer = null;
	timer = setInterval(function(){
		second -= 1;
		if(second >0 ){
			$('#J_second').html(second);
		}else{
			clearInterval(timer);
			$('#J_getCode').show();
			$('#J_resetCode').hide();
		}
	},1000);
}




人气教程排行