Created
May 12, 2012 00:29
-
-
Save a-r-d/2663322 to your computer and use it in GitHub Desktop.
JS timer. Plain text. Uses jQuery.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// A timer that uses jQuery only cause I'm lazy... | |
// Include the jQuery lib and | |
// set a div to id='timerArea' and it will render | |
// a timer that counts down from the following date settings: | |
//Set up your timer! | |
timerLocation = "#timerArea"; | |
timerYear = 2013; | |
timerMonth = 5; | |
timerDay = 15; | |
timerHour = 15; | |
timerMinute = 30; | |
timerSecond = 0; | |
$(document).ready( function() { | |
startTimer(); | |
}); // end ready wrapper. | |
timerHeight = 150; | |
timerWidth = 800; | |
hexArr = ['0', '1', '2', '3', '4', '5', '6', '7', '8', | |
'9', 'a', 'b', 'c', 'd', 'e', 'f']; | |
function startTimer() { | |
$(timerLocation).css({ | |
position: 'relative', | |
width: timerWidth + "px", | |
height: timerHeight + "px", | |
backgroundColor: 'black', | |
color: 'white', | |
fontSize: "90px", | |
textAlign: "center" | |
}); | |
// wtf javascript. | |
timerMonth--; | |
setInterval( function() { | |
// clear old timer values | |
$(timerArea).empty(); | |
// prepare the dates | |
var d = new Date(timerYear, timerMonth, timerDay, timerHour, timerMinute, timerSecond, 0); | |
var now = new Date; | |
var timeDiff = (d.getTime() - now.getTime()) / 1000; // milliseconds to seconds | |
// set up our numbers | |
var yrsTill = Math.floor(timeDiff / (60*60*24*365)); | |
timeDiff -= yrsTill * (60*60*24*365); | |
var daysTill = Math.floor(timeDiff / (60*60*24)); | |
timeDiff -= daysTill * 60 * 60 * 24; | |
var hrsTill = Math.floor(timeDiff / (60 * 60)); | |
timeDiff -= hrsTill * 60 * 60; | |
var minsTill = Math.floor(timeDiff / 60); | |
timeDiff -= minsTill * 60; | |
var secsTill = Math.floor(timeDiff); | |
// formatting: | |
yrsTill = generateSpan(addZeros(yrsTill)); | |
daysTill = generateSpan(addZeros(daysTill)); | |
hrsTill = generateSpan(addZeros(hrsTill)); | |
minsTill = generateSpan(addZeros(minsTill)); | |
secsTill = generateSpan(addZeros(secsTill)); | |
$(timerArea).append(yrsTill + ":" + daysTill + ":" + hrsTill + ":" + minsTill + ":" + secsTill); | |
}, 1000); | |
} | |
function addZeros(nums) { | |
nums = String(nums); | |
if(nums.length <= 1) | |
nums = "0" + nums; | |
return nums; | |
} | |
function generateSpan(yrsTill) { | |
var newClr = "#"; | |
for(var i=0; i < 6; i++) { | |
var hex = Math.round(Math.random() * (hexArr.length - 1)); | |
newClr = newClr + hexArr[hex]; | |
} | |
var style = "style='color:" + newClr + ";'"; | |
var yrs = "<span " + style + ">" + yrsTill + "</span>"; | |
return yrs; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment