十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
可以直接判断毫秒数是否大于一天的 不大于的话 直接改成
成都创新互联公司致力于互联网网站建设与网站营销,提供成都做网站、网站建设、网站开发、seo优化、网站排名、互联网营销、微信小程序、公众号商城、等建站开发,成都创新互联公司网站建设策划专家,为不同类型的客户提供良好的互联网应用定制解决方案,帮助客户在新的全球化互联网环境中保持优势。
$(this).text(event.strftime('剩余时间:%H小时%M分钟%S秒'));
设计一个答题的小游戏,每道题可以有20秒时间作答,超过时间就要给出相应的提醒,由于20秒时间太长,不适合做GIF动态图,下面来看一下我写的5秒倒计时的测试程序结果:
一、主体程序
!DOCTYPE
html
html
head
meta
charset="utf-8"
/
title手写倒计时程序/title
link
rel="stylesheet"
type="text/css"
href="css/layout.css"/
/head
body
section
class="countDown"
span
id="countDownTime"/span
section
class="clear"/section
/section
script
src="js/jquery-1.11.0.js"
type="text/javascript"
charset="utf-8"/script
script
src="js/layout.js"
type="text/javascript"
charset="utf-8"/script
/body
/html
二、CSS样式
*{
margin:
0;
padding:0;
}
html{
font-size:
12px;
}
.countDown{
width:
3.8rem;
text-align:
center;
margin:
2rem
auto
auto;
}
.countDown
#countDownTime{
font-size:
2rem;
}
三、Jquery程序
先来说一下倒计时的原理:
1、将时间转为0:0格式
2、需要开启一个定时器,每隔1000ms就让时间自动减1
3、判断时间是否为0,如果为0则代表计时结束,此时需要给出提示或者做其他事情
下面来看具体实现的倒计时程序:
$(function(){
var
countDownTime=parseInt(5);
//在这里设置每道题的答题时长
function
countDown(countDownTime){
var
timer=setInterval(function(){
if(countDownTime=0){
showTime(countDownTime);
countDownTime--;
}else{
clearInterval(timer);
alert("计时结束,给出提示");
}
},1000);
}
countDown(countDownTime);
function
showTime(countDownTime){
//这段是计算分和秒的具体数
var
minute=Math.floor(countDownTime/60);
var
second=countDownTime-minute*60;
$("#countDownTime").text(minute+":"+second);
}
})
带着我写的原理再去看这段JS程序估计比较容易吧,希望对小伙伴有帮助。
复制代码
代码如下:
var
wait=60;//时间
function
time(o,p)
{//o为按钮的对象,p为可选,这里是60秒过后,提示文字的改变
if
(wait
==
0)
{
o.removeAttr("disabled");
o.val("点击发送验证码");//改变按钮中value的值
p.html("如果您在1分钟内没有收到验证码,请检查您填写的手机号码是否正确或重新发送");
wait
=
60;
}
else
{
o.attr("disabled",
true);//倒计时过程中禁止点击按钮
o.val(wait
+
"秒后重新获取验证码");//改变按钮中value的值
wait--;
setTimeout(function()
{
time(o,p);//循环调用
},
1000)
}
}
视图:
复制代码
代码如下:
input
class="mem_btn
mem_btn26"
type="submit"
name="yt0"
value="点击发送验证码"
id="btn"
调用:
复制代码
代码如下:
echo
CHtml::ajaxSubmitButton('点击发送验证码',
CHtml::normalizeUrl(
array('/ajax/sendGetPassMobilCaptcha','zm_id'=$model-zm_id)
),
array('success'='function(result){
if(result==1){
$(".ys_98").html("验证码发送成功,请及时检查您的手机。");
time($("#yt0"),$(".ys_98"))
}else{
$(".ys_98").html("验证码发送失败,请重试,或联系管理员。");
}
}','data'="zm_id=".$model-zm_id."zm_mob=".$model-zm_mob."zm_name=".$model-zm_name
),
array('class'='mem_btn
mem_btn26'));
首先获取当前时间与目标时间的时间差,然后通过定时器更新这个时间差,就实现了倒计时效果。实现上述过程需要以下两个函数:
getTime() // 返回距1970年1月1日之间的毫秒数,这样将时间差(毫秒数)÷3600÷24即为天数,时分秒类似
setTimeout(code,millisec); // 在指定的毫秒数后调用函数
实例演示如下
创建Html元素
div class="box"
span距离2015年国庆节还剩:/spanbr
div class="content"
input type="text" id="time_d"天input type="text" id="time_h"时input type="text" id="time_m"分input type="text" id="time_s"秒
/div
/div
设置css样式
div.box{width:300px;padding:20px;margin:20px;border:4px dashed #ccc;}
div.boxspan{color:#999;font-style:italic;}
div.content{width:250px;margin:10px 0;padding:20px;border:2px solid #ff6666;}
input[type='text']{width:45px;height:35px;padding:5px 10px;margin:5px 0;border:1px solid #ff9966;}
编写jquery代码
$(function(){
show_time();
});
function show_time(){
var time_start = new Date().getTime(); //设定当前时间
var time_end = new Date("2015/10/01 00:00:00").getTime(); //设定目标时间
// 计算时间差
var time_distance = time_end - time_start;
// 天
var int_day = Math.floor(time_distance/86400000)
time_distance -= int_day * 86400000;
// 时
var int_hour = Math.floor(time_distance/3600000)
time_distance -= int_hour * 3600000;
// 分
var int_minute = Math.floor(time_distance/60000)
time_distance -= int_minute * 60000;
// 秒
var int_second = Math.floor(time_distance/1000)
// 时分秒为单数时、前面加零
if(int_day 10){
int_day = "0" + int_day;
}
if(int_hour 10){
int_hour = "0" + int_hour;
}
if(int_minute 10){
int_minute = "0" + int_minute;
}
if(int_second 10){
int_second = "0" + int_second;
}
// 显示时间
$("#time_d").val(int_day);
$("#time_h").val(int_hour);
$("#time_m").val(int_minute);
$("#time_s").val(int_second);
// 设置定时器
setTimeout("show_time()",1000);
}
本文实例讲述了JQuery实现的按钮倒计时效果。分享给大家供大家参考,具体如下:
一个实现了在按钮上显示倒计时,倒计时完毕自动将按钮设置为不可用的效果,具体代码如下:
html
head
titletest
count
down
button/title
script
src="jquery1.8.3.min.js"
type="text/javascript"/script
script
type="text/javascript"
$(function
()
{
$('#btn').click(function
()
{
var
count
=
10;
var
countdown
=
setInterval(CountDown,
1000);
function
CountDown()
{
$("#btn").attr("disabled",
true);
$("#btn").val("Please
wait
"
+
count
+
"
seconds!");
if
(count
==
0)
{
$("#btn").val("Submit").removeAttr("disabled");
clearInterval(countdown);
}
count--;
}
})
});
/script
/head
body
input
type="button"
id="btn"
value="Submit"
/
/body
/html
运行效果截图如下:
希望本文所述对大家jQuery程序设计有所帮助。