How to set count down in jquery

< script type = "text/javascript" > function cdtime(container, targetdate) { if (!document.getElementById || !document.getElementById(container)) return this.container = document.getElementById(container) this.currentTime = new Date() this.targetdate = new Date(targetdate) this.timesup = false this.updateTime() } cdtime.prototype.updateTime = function () { var thisobj = this this.currentTime.setSeconds(this.currentTime.getSeconds() + 1) setTimeout(function () { thisobj.updateTime() }, 1000) //update time every second } cdtime.prototype.displaycountdown = function (baseunit, functionref) { this.baseunit = baseunit this.formatresults = functionref this.showresults() } cdtime.prototype.showresults = function () { var thisobj = this var timediff = (this.targetdate - this.currentTime) / 1000 //difference btw target date and current date, in seconds if (timediff < 0) { //if time is up this.timesup = true this.container.innerHTML = this.formatresults() return } var oneMinute = 60 //minute unit in seconds var oneHour = 60 * 60 //hour unit in seconds var oneDay = 60 * 60 * 24 //day unit in seconds var dayfield = Math.floor(timediff / oneDay) var hourfield = Math.floor((timediff - dayfield * oneDay) / oneHour) var minutefield = Math.floor((timediff - dayfield * oneDay - hourfield * oneHour) / oneMinute) var secondfield = Math.floor((timediff - dayfield * oneDay - hourfield * oneHour - minutefield * oneMinute)) if (this.baseunit == "hours") { //if base unit is hours, set "hourfield" to be topmost level hourfield = dayfield * 24 + hourfield dayfield = "n/a" } else if (this.baseunit == "minutes") { //if base unit is minutes, set "minutefield" to be topmost level minutefield = dayfield * 24 * 60 + hourfield * 60 + minutefield dayfield = hourfield = "n/a" } else if (this.baseunit == "seconds") { //if base unit is seconds, set "secondfield" to be topmost level var secondfield = timediff dayfield = hourfield = minutefield = "n/a" } this.container.innerHTML = this.formatresults(dayfield, hourfield, minutefield, secondfield) setTimeout(function () { thisobj.showresults() }, 1000) //update results every second } function formatresults() { if (this.timesup == false) { //if target date/time not yet met var displaystring = arguments[0] + " days " + arguments[1] + " hours " + arguments[2] + " minutes " + arguments[3] + " seconds left until March 23, 2009 18:25:00" } else { //else if target date/time met var displaystring = "Future date is here!" } return displaystring } function formatresults2() { if (this.timesup == false) { //if target date/time not yet met var displaystring = "<ul><li>" + arguments[0] + " <span>days</span></li><li> " + arguments[1] + " <span>hours</span></li><li> " + arguments[2] + " <span>minutes</span></li><li> " + arguments[3] + " <span>seconds</span></li></ul>" } else { //else if target date/time met var displaystring = "" //Don't display any text alert("Christmas is here!") //Instead, perform a custom alert } return displaystring } </script> <div id = "countdowncontainer" > < /div> < br / > < div id = "countdowncontainer2" > < /div> < script type = "text/javascript" > //var future_date = "January 25, 2014 15:10:25"; //var future_date = "February 25, 2014 15:10:25"; //var future_date = "March 25, 2014 15:10:25"; //var future_date = "April 25, 2014 15:10:25"; //var future_date = "May 25, 2014 15:10:25"; //var future_date = "June 25, 2014 15:10:25"; //var future_date = "July 25, 2014 15:10:25"; //var future_date = "August 25, 2014 15:10:25"; //var future_date = "September 25, 2014 15:10:25"; var future_date = "October 25, 2014 15:10:25"; //var future_date = "November 25, 2014 15:10:25"; //var future_date = "December 22, 2014 15:10:25"; /*var futuredate=new cdtime("countdowncontainer", "June 28, 2009 18:25:00") futuredate.displaycountdown("days", formatresults)*/ var currentyear = new Date().getFullYear() //dynamically get this Christmas' year value. If Christmas already passed, then year=current year+1 var thischristmasyear = (new Date().getMonth() >= 11 && new Date().getDate() > 25) ? currentyear + 1 : currentyear var christmas = new cdtime("caon-down", future_date) christmas.displaycountdown("days", formatresults2) < /script>

Comments