比较常用的一种效果,当点击获取手机验证码之后,会有一个倒计时的效果,一般是60秒开始到0就变为“获取验证码”,下面以5秒动画图片示例:
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);
}
在线演示地址:
此处内容需要登录并 发表评论 才可见零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。