看了網上的其他的例子,覺得寫的都有點復雜,不好理解,於是自己動手寫了個。
本來想封裝成jquery插件,但是覺得因為功能很簡單,沒有必要做成jquery插件,引用的時候不需要引入jqery庫,這里直接用的原生js的方法。
TimeDown.js
/* 時間倒計時插件 TimeDown.js */ function TimeDown(id, endDateStr) { //結束時間 var endDate = new Date(endDateStr); //當前時間 var nowDate = new Date(); //相差的總秒數 var totalSeconds = parseInt((endDate - nowDate) / 1000); //天數 var days = Math.floor(totalSeconds / (60 * 60 * 24)); //取模(余數) var modulo = totalSeconds % (60 * 60 * 24); //小時數 var hours = Math.floor(modulo / (60 * 60)); modulo = modulo % (60 * 60); //分鍾 var minutes = Math.floor(modulo / 60); //秒 var seconds = modulo % 60; //輸出到頁面 document.getElementById(id).innerHTML = "還剩:" + days + "天" + hours + "小時" + minutes + "分鍾" + seconds + "秒"; //延遲一秒執行自己 setTimeout(function () { TimeDown(id, endDateStr); }, 1000) }
Html
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>時間倒計時</title> <script src="TimeDown.js"></script> </head> <body> <form id="form1" runat="server"> <div id="show"> </div> <script type="text/javascript"> TimeDown("show", "2013-11-25 8:00:45"); </script> </form> </body> </html>
顯示效果:
還剩:2天19小時29分鍾5秒
