我想实现一个时间倒记时。
在网上找了一个是可以倒记时了,可是我挂在IIS上,每台电脑都是最初的时间,开始算的,能不能实现时间同步。
下面是网上找的。。
<script language="JavaScript">
var maxtime;
if (window.name == '') {
var minuts = parseInt(document.getElementById('ctl00_ContentPlaceHolder1_lblMinutes').innerHTML);
maxtime = minuts * 60;
} else {
maxtime = window.name;
}
function CountDown() {
if (maxtime >= 0) {
minutes = Math.floor(maxtime / 60);
seconds = Math.floor(maxtime % 60);
document.all["ctl00_ContentPlaceHolder1_lblMinutes"].innerHTML = minutes;
document.all["lblSeconds"].innerHTML = seconds;
if (maxtime == 5 * 60) alert('注意,还有5分钟!');
--maxtime;
window.name = maxtime;
}
else {
//alert("抢购时间到,结束!");
}
}
setInterval("CountDown()", 1000);
//-->
</script>
------解决方案--------------------
你可以这样,需要把截止时间记录在服务器上
- HTML code
<%@ Page Language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> public DateTime DeadTime = DateTime.Parse("2011-8-15 16:0:0"); public int left = 0; protected void Page_Load(object sender, EventArgs e) { TimeSpan t = DeadTime.Subtract(DateTime.Now); left = Convert.ToInt32(t.TotalMinutes); } </script> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div id="MCount"></div><div id="SCount"></div> <script language="JavaScript"> var maxtime; var minuts = <%=left %>; maxtime = minuts * 60; function CountDown() { if (maxtime >= 0) { minutes = Math.floor(maxtime / 60); seconds = Math.floor(maxtime % 60); document.getElementById("MCount").innerHTML = minutes; document.getElementById("SCount").innerHTML = seconds; if (maxtime == 5 * 60) alert('注意,还有5分钟!'); --maxtime; } else { //alert("抢购时间到,结束!"); } } setInterval("CountDown()", 1000); //--> </script </form> </body> </html>