I think this is easiest with just one timeout that reschedules itself:
function countForTwoMins() {
var count = 1,
timer = function () {
$("#Time").html(count++);
};
window.setTimeout(function() {
timer();
if (count < 120) {
window.setTimeout(arguments.callee, 1000);
}
}, 1000);
}
countForTwoMins();
http://jsfiddle.net/ybyu5/
Of course, if you care about arguments.callee being deprecated:
function countForTwoMins() {
var count = 1,
function callback () {
$("#Time").html(count++);
if (count < 120) {
window.setTimeout(callback, 1000);
}
}
window.setTimeout(callback, 1000);
}
$("#Time").html("1")- obviously I know that's not what you want.clearInterval().