Get Even More Visitors To Your Blog, Upgrade To A Business Listing >>

Create a Christmas Countdown Timer Widget In BlogSpot

christmas countdown widget Add a Christmas count down timer widget to your blogger blog to welcome your blog visitors and wish them happy Christmas. This countdown timer widget counts down to 25 December 2017 and in military time format by counting days, hours, minutes and seconds left for the coming Christmas event. It also alerts and wishes Christmas by generating a pop-up once the count down ends. The JavaScript is provided by dynamic drive and it is customized and enhanced by MBT. This widget will be shared on each event here may it be EID, Holi or New Year. I hope you find it useful. It is extremely easy to install and customize it. The best thing about it is that it contains no ads because we are utilizing a free script provided by dynamic drive and storing it on blogger. Lets get to work then!

Live Demo

Add Christmas CountDown Timer Gadget To Blogspot

  1. Go To Blogger > Design
  2. Choose HTML/JavaScript widget
  3. Paste the following code inside it,

.lcdstyle{ /*Example CSS to create LCD countdown look*/
font: bold 20px arial;
padding: 15px;

border:5px solid #0080ff;

box-shadow: 5px 5px 5px #CCCCCC;


.lcdstyle sup{ /*Example CSS to create LCD countdown look*/
font-size: 120%

* Dynamic Countdown script- © Dynamic Drive (
* This notice MUST stay intact for legal use
* Visit for this script and 100s more.

function cdtime(container, targetdate){
if (!document.getElementById || !document.getElementById(container)) return
this.currentTime=new Date()
this.targetdate=new Date(targetdate)

var thisobj=this
setTimeout(function(){thisobj.updateTime()}, 1000) //update time every second

cdtime.prototype.displaycountdown=function(baseunit, functionref){

var thisobj=this

var timediff=(this.targetdate-this.currentTime)/1000 //difference btw target date and current date, in seconds
if (timediff this.timesup=true
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
else if (this.baseunit=="minutes"){ //if base unit is minutes, set "minutefield" to be topmost level
else if (this.baseunit=="seconds"){ //if base unit is seconds, set "secondfield" to be topmost level
var secondfield=timediff
this.container.innerHTML=this.formatresults(dayfield, hourfield, minutefield, secondfield)
setTimeout(function(){thisobj.showresults()}, 1000) //update results every second

/////CUSTOM FORMAT OUTPUT FUNCTIONS BELOW//////////////////////////////

//Create your own custom format function to pass into cdtime.displaycountdown()
//Use arguments[0] to access "Days" left
//Use arguments[1] to access "Hours" left
//Use arguments[2] to access "Minutes" left
//Use arguments[3] to access "Seconds" left

//The values of these arguments may change depending on the "baseunit" parameter of cdtime.displaycountdown()
//For example, if "baseunit" is set to "hours", arguments[0] becomes meaningless and contains "n/a"
//For example, if "baseunit" is set to "minutes", arguments[0] and arguments[1] become meaningless etc

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 December 25, 2017 18:25:00"
else{ //else if target date/time met
var displaystring=""
return displaystring

function formatresults2(){
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 "
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

color:#0080ff; margin:0;">Happy Holidays!

var futuredate=new cdtime("countdowncontainer", "March 23, 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("countdowncontainer2", "December 25, "+thischristmasyear+" 0:0:00")
christmas.displaycountdown("days", formatresults2)

Make these changes to its colors and font if you wish:

  • To change the color of happy holidays edit color:#0080ff
  • To change the rounded blue border colour and size edit border:5px solid #0080ff
  • To change the Count Down text colour edit color:#FF3333

    4.   Save your widget and say bingo!

Visit your blogs to see it working just perfectly.

Want to CountDown till New Year?

Simply change December 25 to  December 31    and change Christmas is here! to HAPPY NEW YEAR FOLKS! 

If you know basic CSS then you add more flavour and color variation to it. I hope you may find this cool new widget worth using. If you wish to share it with your readers then kindly attach attributes to MBT and dynamic drive. Do let me know if you needed any further help. Peace pals! :)

This post first appeared on My Blogger Tricks, please read the originial post: here

Share the post

Create a Christmas Countdown Timer Widget In BlogSpot


Subscribe to My Blogger Tricks

Get updates delivered right to your inbox!

Thank you for your subscription