当前位置:首页 > 开发 > Web前端 > 前端 > 正文

百度倒计时的实现

发表于: 2011-01-31   作者:asialee   来源:转载   浏览次数:
摘要:   <!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

 

<!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=gb2312" />
<title>百度一下,你就知道alonglee.net</title>
<style type="text/css">
<!--
#cd,#cd div{

background:url(http://www.baidu.com/img/cd.png)}
/* 这里调节位置,top 和 margin-left*/
#cd {
 display:block;
 position:absolute;
 width:126px;
 height:29px;
 overflow:hidden;
 top:50px;
 left:50%;
 margin-left:-63px;
 cursor:pointer;
*top:83px;    border: 1px solid #CCCCCC;
}
#cd div{position:absolute;width:12px;height:19px;overflow:hidden;background-position:0 -30px;top:4px;}
#n5{left:3px}
#n4{left:18px}
#n3{left:45px}
#n2{left:60px}
#n1{left:86px}
#n0{left:101px} 
-->
</style>
</head>

<body>

<div id="cd">
 <div id="n5"></div>
    <div id="n4"></div>
    <div id="n3"></div>
    <div id="n2"></div>
    <div id="n1"></div>
    <div id="n0"></div>
</div>

<script language="javascript" type="text/javascript">
 
 var d = document;
/* 
功能:给一个事件指派多个处理过程的
参数含义:
 C = this 不仅可以是windows 还可以是其他对象!
 B: click 事件类型
 A: 需要给对象C添加的【处理过程】

 addEventListener(evType, fn, false);Mozilla/Firefox 支持
 attachEvent("on"+evType, fn);IE5.0以上 Opera 支持该方法中事件用on开头

注意:attachEvent 所指派的多个过程的执行顺序是随机的,所以这几个过程之间不要有顺序依赖。
*/
function addEV(C,B,A)

 {if(w.attachEvent){
  C.attachEvent("on"+B,A); 
 } 
 else{
  if(w.addEventListener){C.addEventListener(B,A,false)} 
 } 
}

function G(A){ return d.getElementById(A)}

/* 这是关键 */
(function() 
 {

 /*
 I=1296576000000 含义:
 从1970-1-1 8:00:00 到 2011-2-2 0:00:00需要的毫秒数 ,考虑时区:北京时间+8
 如果用asp计算 :
 fromd = "1970-01-01 08:00:00"
 tod = "2011-2-2"
 response.Write(datediff("s",fromd,tod)) ==> 1296576000 秒 ===> 1296576000*1000毫秒
 
 举一反三:倒计时2011-5-1,如何做?你是知道的,对吧
 */
   var R=0,K=0,I=1296576000000,P,M=20*60*1000,F=72*3600*1000,L=12*60*1000,B=2*60*1000,Q=Math.random()*(L-B)+B,A=1000,C=false,N=G("cd");
  var D=[G("n0"),G("n1"),G("n2"),G("n3"),G("n4"),G("n5")];
  //alert(D.length)
  function J()
  {
   if(C){return } 
   var S=d.createElement("SCRIPT");
   S.src="http://chunjie.baidu.com/time.php?t="+new Date().getTime();
   d.getElementsByTagName("HEAD")[0].appendChild(S)
  } 
  
  
  window.CST=function(S)
  { 
   if(C)
   { return } 
   clearTimeout(P);
   R=parseInt(S);
   K=0;
   
   //R=0 I=1296576000000
   if(R<I){H()} 
   else{O()}

  } ;
 
  function E()
  {
   var X=I-R-K;
   if(X<F){N.style.display="block"}

   if(X<Q)
   {
    window.location.reload()
   } 
   var W=parseInt(X/3600000);
   var S=parseInt(X%3600000/60000);
   var V=parseInt(X%3600000%60000/1000);
   var T=[];
   T[5]=parseInt(W/10);
   T[4]=W%10;
   T[3]=parseInt(S/10);
   T[2]=S%10;
   T[1]=parseInt(V/10);
   T[0]=V%10;
   for(var U=0;U<6;U++)
   {
    D[U].style.backgroundPosition="-"+(T[U]*12)+"px -30px"
   } 
  }

  function H()
  { //K=0 A:1000
   K+=A;
   if(I-R-K<0){
    O();
    return } 
   
   //M=20*60*1000
   if(K>=M){ J()} 
   E();
   P=setTimeout(H,A)
  }

  function O()
  {
   clearTimeout(P);
   C=true;
   N.style.display="none"
  } 
  
  J();
  //alert(N.id); --#cd
  addEV(N,"click",new Function('window.open("http://chunjie.baidu.com","_blank");'))
 } 
)();
</script>
</body>
</html>

百度倒计时的实现

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
今天在CocoaChina上面看到有人在问倒计时怎么做,记得以前在看Iphone31天的时候做过一个,今天翻出来
今天在CocoaChina上面看到有人在问倒计时怎么做,记得以前在看Iphone31天的时候做过一个,今天翻出来
打算写几篇博客总结下近来做的一个东西:www.eccpitbj.org/chitec2014 项目中要用到倒计时,找了几
关于倒计时的实现,可以说有很多的方法,比较常见的就是Timer+TimerTask+Handler了,或者还可以配合
点击按钮发送短信以后,倒计时3秒钟后退出Activity。本来想用弹出多个Toast的方法实现,后来发现效
需求:最近做一个即时通项目,需要结合OA项目;其中有一个待办事项需要倒计时,准备在DataGridView
打算写几篇博客总结下近来做的一个东西:www.eccpitbj.org/chitec2014 项目中要用到倒计时,找了几
网上有网友想实现一个功能,就是倒计时的功能。以某时间点与当前时间比较,还剩余时间,进行实时显
2015-06-13   最近学习了百度地图API的简单开发,现记录如下:(持续更新中)   百度地图API是
第一步:安装jodconverter,安装之后可以实现doc文档转成pdf。 文件下载地址为http://www.artofsolv
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号