JavaScript利用Date实现简单的倒计时实例,js代码实
分类:计算机网络

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>简单易用的倒计时js代码</title>
<style>
*{ margin:0; padding:0; list-style:none;}
body{ font-size:18px; text-align:center;}
.time{ height:30px; padding:200px;}
</style>
</head>
<body>
  <div class="time">
    00天
    00时
    00分
    00秒
  </div>
<script>
  function GetRTime(){
    var EndTime= new Date('2014/09/20 00:00:00');
    var NowTime = new Date();
    var t =EndTime.getTime() - NowTime.getTime();
    var d=0;
    var h=0;
    var m=0;
    var s=0;
    if(t>=0){
      d=Math.floor(t/1000/60/60/24);
      h=Math.floor(t/1000/60/60%24);
      m=Math.floor(t/1000/60%60);
      s=Math.floor(t/1000%60);
    }


    document.getElementById("t_d").innerHTML = d + "天";
    document.getElementById("t_h").innerHTML = h + "时";
    document.getElementById("t_m").innerHTML = m + "分";
    document.getElementById("t_s").innerHTML = s + "秒";
  }
  setInterval(GetRTime,0);
</script>

</body>
</html> 

介绍

例如,一些网址上的手提式有线电话机短信认证的法力,有类似实现点击按钮后,倒计时60秒能力重新点击发送的功效。

网址中为了堤防恶意获取验证短信、验证邮箱,都会在点击获取验证码的按键上做个倒计时的功力。完结那个成效,二个setInterval和三个clearInterval就能够解决了,没有须求太多的代码。实例效果和代码如下:

您大概感兴趣的稿子:

  • JS/jquery完成三个网页内同偶然候调用四个倒计时的点子
  • js代码完成点击开关出现60秒倒计时
  • JS实现倒计时(天数、时、分、秒)
  • js完结点击获取验证码倒计时效果
  • javascript秒数倒计时活动跳转代码
  • Javascript实现商品秒杀倒计时(时间与服务器时间共同)
  • 团购、定期抢购倒计时js版
  • JS/jQ实现免费获得手提式有线电电话机验证码倒计时效果
  • JS倒计时代码汇总
  • js完结点击注册开关开头读秒倒计时的小例子
  • js与jQuery完成的客户注册合同倒计时成效实例【二种办法】

Date对象,是操作日期和岁月的目的。Date对象对日期和岁月的操作只好通过措施。Date在js花月Array类似,都是兼具自个儿的特别规方式的特别规指标。

此例子用Javascript落成点击开关后,倒计时60秒技巧重新点击发送验证码的职能。

美高梅网址 1

创设 Date 对象的语法:

例子1:**Javascript 完成 点击开关倒计时60秒方可再度点击发送的效果**

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<input type="button" style="height:32px;width:120px;" value="点击发送验证码" onclick="sendCode(this)" />
<script type="text/javascript">
 var clock = '';
 var nums = 10;
 var btn;
 function sendCode(thisBtn)
 { 
 btn = thisBtn;
 btn.disabled = true; //将按钮置为不可点击
 btn.value = nums+'秒后可重新获取';
 clock = setInterval(doLoop, 1000); //一秒执行一次
 }
 function doLoop()
 {
 nums--;
 if(nums > 0){
  btn.value = nums+'秒后可重新获取';
 }else{
  clearInterval(clock); //清除js定时器
  btn.disabled = false;
  btn.value = '点击发送验证码';
  nums = 10; //重置时间
 }
 }
</script>
var myDate=new Date() //Date 对象会自动把当前日期和时间保存为其初始值。
<input type="button" id="btn" value="免费获取验证码" />
<script type="text/javascript">
var wait=60;
function time(o) {
  if (wait == 0) {
   o.removeAttribute("disabled");   
   o.value="免费获取验证码";
   wait = 60;
  } else { 

   o.setAttribute("disabled", true);
   o.value="重新发送(" + wait + ")";
   wait--;
   setTimeout(function() {
    time(o)
   },
   1000)
  }
 }
document.getElementById("btn").onclick=function(){time(this);}
</script>

运用setInterval和clearIntervaljs完结js点击获取验证码倒计时效果,希望对大家的学习抱有协助。

获得倒计时事先,大家不妨先来看怎么着获得当前光阴呢!!!

例子2:**点击按键出现60秒倒计时js代码**

您可能感兴趣的稿子:

  • JS 倒计时完成代码(时、分,秒)
  • JS完毕倒计时(天数、时、分、秒)
  • js代码实现点击开关出现60秒倒计时
  • js几秒以往倒计时跳转示例
  • Javascript兑现商品秒杀倒计时(时间与服务器时间同步)
  • javascript秒数倒计时活动跳转代码
  • JS/jQ完成免费获得手提式有线话机验证码倒计时效果
  • 美高梅网址,js倒计时期码
  • 团购、定时抢购倒计时js版
  • JS倒计时期码汇总
  • 原生JS完结轻便的倒计时成效示例
function time(){
  var oDate = new Date();
  var year = oDate.getFullYear();
  var month = oDate.getMonth() + 1 ;
  var dDate = oDate.getDate();
  var day = oDate.getDay();
  var house = oDate.getHours();
  var minu = oDate.getMinutes();
  var sec = oDate.getSeconds();


  switch(day){
  case 1:
  day = '星期一';
  break;
  case 2:
  day = '星期二';
  break;
  case 3:
  day = '星期三';
  break;
  case 4:
  day = '星期四';
  break;
  case 5:
  day = '星期五';
  break;
  case 6:
  day = '星期六';
  break;
  case 0:
  day = '星期日';
  break;
  }

  function double( t ){
  if( t < 10 ){
   t = '0' + t;
  }
  return t;
  }


  document.body.innerHTML = year + '年' + month +'月'+ dDate + '日 ' + day + ' ' + double(house) +':'+ double(minu) +':' + double(sec);
 }
 time();
 setInterval(time,1000);
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>无标题文档</title> 
<script type="text/javascript" src="js/jquery.js"></script> 
</head> 

<body> 
<input type="button" id="btn" value="免费获取验证码" onclick="settime(this)" /> 
<script type="text/javascript"> 
var countdown=60; 
function settime(val) { 
if (countdown == 0) { 
val.removeAttribute("disabled"); 
val.value="免费获取验证码"; 
countdown = 60; 
} else { 
val.setAttribute("disabled", true); 
val.value="重新发送(" + countdown + ")"; 
countdown--; 
} 
setTimeout(function() { 
settime(val) 
},1000) 
} 
</script> 
</body> 
</html>

赢得倒计时

例子3:**点击开关后,60秒倒计时后工夫三回九转能够点击,按键上还是能够显得倒计时**

     1、达成倒计时成效

预期的功力图:

     2、倒计时停止按键可被点击,此前不得被点击

美高梅网址 2

实例代码:

那是微信大伙儿平台上的代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
<div id="lastTime">
 0天 
 00: 
 00: 
 00 
</div>
<br /><br />
<style type="text/css">
#btn{
 text-decoration: none;
 display: block;
 width: 100px;
 height: 35px;
 background: #ccc;
 text-align: center;
 line-height: 35px;
 color: #666;
}
#btn.btn{
 background: red;
 color: #fff;
 font-size: 20px;
 font-weight: bold;
}
</style>
<a href="javascript:;" id="btn">即将开抢!</a>
<script type="text/javascript">
 var oLt = document.getElementById("lastTime");
 var oBtn = document.getElementById("btn");
 time();
 var timer = setInterval( time , 1000 );
 function time(){
 var endTime = new Date('2017/01/13 00:00:00');//结束日期不得在当前日期之前
 var nowTime = new Date();
 var splus = endTime.getTime() - nowTime.getTime();
 //天 时 分 秒
 if( splus <= 1 ){
  clearInterval( timer );
  oBtn.className = 'btn';
  oBn.innerHTML = '开始秒杀!';
  oBtn.href = 'http://www.baidu.com';
  return;
 }else{
  oBtn.className = '';
 }
 var day = Math.floor( splus / 1000 / 60 / 60 / 24 );
 var hours = Math.floor( splus / 1000 / 60 / 60 % 24 );
 var min = Math.floor(splus / 1000 / 60 % 60);
 var sec = Math.floor(splus / 1000 % 60);
 oLt.innerHTML = day + '天 ' + double( hours ) + ':' + double( min ) + ':' + double( sec );

 function double( n ){
  if( n < 10 ){
  n = '0' + n;
  }
  return n;
 }
 }
</script>


</body>
</html>
function E() {
var e = $("#mobile"), t = (new Date).getTime(), n = Math.floor((t - b) / 1e3);
g && clearTimeout(g), n >= 60 ? (e.prop("readonly", !1), y = !0, $("#sendmobile").html("发送验证码").attr("disabled", !1).removeClass("btn_disabled")) : (e.prop("readonly", !0), y = !1, $("#sendmobile").attr("disabled", !0).addClass("btn_disabled").html("%s秒后可重发".sprintf(60 - n)), g = setTimeout(E, 1e3));
}
function S() {
function e() {
if (!y) return;
var e = $.trim(n.val());
l.mobile(e) ? t.attr("disabled", !1).removeClass("btn_disabled") : t.attr("disabled", !0).addClass("btn_disabled");
}
var t = $("#sendmobile"), n = $("#mobile");
n.keyup(e).blur(e), e(), t.click(function() {
var e;
t.attr("disabled") !== "disabled" && (e = "+86" + $.trim(n.val()), b = (new Date).getTime(), E(), o.post({
url: w ? "/cgi-bin/formbyskey" : "/acct/formbyticket",
data: {
form: "mobile",
action: "set",
f: "json",
mobile: e
},
mask: !1
}, function(e) {
var t = e.BaseResp.Ret;
if (t == 0) u.suc("验证码已经发送"); else {
switch (t) {
case -13:
u.err("登录超时,请重新登录");
break;
case -35:
u.err("该手机已经登记过2次,请使用别的手机号进行用户信息登记");
break;
default:
u.err("验证码发送失败");
}
b = 0;
}
}));
});
}

功用图如下:

这段代码小编就是不知道怎么才干调用到和谐的代码上来,经过高人指导有了部分头寻。

美高梅网址 3

哲人的解题思路:假如严峻来讲,那一个还要结合后台获取时间的,要不然别人刷新一下就行了。
                            固然不严酷,用个cookie也得以。

美高梅网址 4

<script src="http://lib.sinaapp.com/js/jquery/1.7.2/jquery.min.js"></script>
<script src="http://yukon12345.com/yukon12345.com/js/jquery.cookie.js"></script>
<script>
 time1=$.cookie("time1")||60;
 time2=$.cookie("time2")||60;
 dis1=$.cookie("dis1")
 dis2=$.cookie("dis2")
 function countDown($obj){

  var time;
  if($obj.attr("id")=="b1")
  {
   time=--time1;
   $.cookie("time1",time,{"expires":1});
   if(time<=0){
    time1=60;
    $obj[0].disabled=!$obj[0].disabled
    clearInterval(inter1)
    $obj.text("点击发送")
    $.cookie("dis1","")
    return
   }
  }
  if($obj.attr("id")=="b2")
  { time=--time2;
   $.cookie("time2",time,{"expires":1});
   if(time<=0){
    time1=60;
    $obj[0].disabled=!$obj[0].disabled
    clearInterval(inter2)
    $obj.text("点击发送")
    $.cookie("dis2","")
    return
   }
  }

  $obj.text(time+"秒后重新发送")

 }

 $(function(){
  if(dis1="dis"){
   $("#b1")[0].disabled='disabled'
   inter1=setInterval(function(){countDown($("#b1"))},1000)
  }
  if(dis2="dis"){
   $("#b2")[0].disabled='disabled'
   inter2=setInterval(function(){countDown($("#b2"))},1000)
  }
$(".cd").bind("click",function(){
 $this=$(this);
 //没有被禁用时禁用并执行倒计时
 if(!$this[0].disabled){
 $this[0].disabled='disabled';
  if($this.attr("id")=="b1"){
   $.cookie("dis1","dis",{"expires":1})
   inter1=setInterval(function(){countDown($this)},1000)
  }
  if($this.attr("id")=="b2"){
   $.cookie("dis2","dis",{"expires":1})
   inter2=setInterval(function(){countDown($this)},1000)
  }

 }
})



})
</script>

<button id="b1" class="cd" >点击发送</button><br>
<button id="b2" class="cd" >点击发送</button><br>

总结

我们经过那三个例证解说有非常的少思路了,那就动手完成一下吧,希望对我们学习javascript程序设计具备帮忙。

上述就是那篇文章的全体内容了,希望本文的内容对大家的读书可能专门的学业能带来一定的援救,假设分外大家能够留言交换,多谢大家对台本之家的支持。

你或然感兴趣的文章:

  • JS 倒计时实今世码(时、分,秒)
  • JS实现倒计时(天数、时、分、秒)
  • js几秒今后倒计时跳转示例
  • js完成点击获取验证码倒计时效果
  • Javascript贯彻商品秒杀倒计时(时间与服务器时间共同)
  • javascript秒数倒计时活动跳转代码
  • JS/jQ完毕无需付费获得手提式有线话机验证码倒计时效果
  • js倒计时期码
  • 团购、定期抢购倒计时js版
  • JS倒计时代码汇总
  • 原生JS完毕简单的倒计时作用示例

您大概感兴趣的稿子:

  • JS达成针对给定期期的倒计时作用示例
  • js达成倒计时效果(小于10补零)
  • 原生js实现倒计时--2018
  • js达成短信发送倒计时功效(正则验证)
  • js实现5秒倒计时重新发送短信作用
  • 原生js完毕节日时间倒计时功用
  • JS 倒计时完成代码(时、分,秒)
  • 简易易用的倒计时js代码
  • js代码实现点击按键出现60秒倒计时
  • js达成点击获取验证码倒计时效果
  • JS倒计时期码汇总
  • js达成出殡和埋葬验证码后的倒计时效能
  • JavaScript贯彻的物品抢购倒计时成效示例

本文由美高梅网址发布于计算机网络,转载请注明出处:JavaScript利用Date实现简单的倒计时实例,js代码实

上一篇:没有了 下一篇:js实现对ajax请求面向对象的封装,使用原生js封装
猜你喜欢
热门排行
精彩图文