JS倒计时、跳转模块以及JSP中比较日期跳转模块

1,前言

这个是根据网上一些资料重新编写整理而来的,主要是作为自己使用的一个小积累,原本的目的是使网页在规定的时间段内自动跳转,在时间段外的请求不做处理;分别写了JS和JSP的代码,放在这里以备查用;


2,代码

2.1 倒计时模块

这个每隔1秒自动刷新,可以稍作修改以作他用:

<!--倒计时--> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <script language="JavaScript"> function Dclock() { var symbol="3月31日"; var deadline= new Date("03/31/2013 11:25:00"); //标准时间格式 var now = new Date(); var diff = -480 - now.getTimezoneOffset(); //是北京时间和当地时间的时间差 var leave = (deadline.getTime() - now.getTime()) + diff*60000; //getTime()可以取得1970之后的毫秒数,1970年前为负数 var day = Math.floor(leave / (1000 * 60 * 60 * 24)); //天数 var hour = Math.floor(leave / (1000*3600)) - (day * 24); var minute = Math.floor(leave / (1000*60)) - (day * 24 *60) - (hour * 60); var second = Math.floor(leave / (1000)) - (day * 24 *60*60) - (hour * 60 * 60) - (minute*60); if (now.getTime()<deadline.getTime()) { LiveClock.innerHTML = "现在离"+symbol+"还有"+day+"天"+hour+"小时"+minute+"分"+second +"秒" ; test.innerHTML= "getTime:"+now.getTime()+"Deadline:"+deadline.getTime(); setTimeout("Dclock()",1000); //调用自身每隔1秒 } else if (now.getTime()>deadline.getTime()) { LiveClock.innerHTML = "END"; setTimeout("Dclock()",1000); } } </script> <!--倒计时--> <body οnlοad=Dclock()> <div id= LiveClock></div> <div id=test></div> </body> 2.2 JS跳转

<!--Javascript begin--> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <script language="JavaScript"> function Dclock() { var deadline= new Date("05/31/2012 20:30:00"); //记时起点 var deadline_2= new Date("05/31/2012 21:30:00"); //记时结束 var symbol="5月31日"; var now = new Date(); if (now.getTime()<deadline.getTime()) { } else if (deadline.getTime()<now.getTime()&&now.getTime()<deadline_2.getTime())//C语言写惯了a<b<c了把 { //alert(now.getTime()); window.location.href="http://localhost/XXX/page.html"; setTimeout("Dclock()",1000); } else if (now.getTime()>deadline_2.getTime()) { } } </script> <Javascript end--> 2.3 JSP代码

由于JS取得是客户端时间,虽然可以通过交互来取得服务器时间,但是显得有些多余,这里贴一下JSP的代码

<%@ page contentType="text/html; charset=UTF-8" import="java.util.*;" %> <%//获取当前时间 java.util.Date now=new java.util.Date(); java.util.Date dline=new java.util.Date("03/01/2012 20:30:00"); java.util.Date dline2=new java.util.Date("03/03/2012 21:30:00"); if (now.getTime()<dline.getTime()) { } else if (dline.getTime()<now.getTime()&&now.getTime()<dline2.getTime())//C语言写惯了a<b<c了把 { response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); String newLocn="http://XXX/page/earthhour/"; response.setHeader("Location",newLocn); } else if (now.getTime()>dline2.getTime()) { } %>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值