var timer;
chat.client.addMessage = function (data) {
clearTimeout(timer);
test2(data);
};
timer = setInterval(function () {
console.log("working");
test1();
}, 5000);
I am trying to restart timer when ever chat.client.addMessage is executed.SetInterval is executed after every 5000ms until chat.client.addMessage is executed when ever that method is executed setInterval Function stops executing . Help will be appreciated:)
var timer;
chat.client.addMessage = function (data) {
clearTimeout(timer);
test2(data);
};
timer = setInterval(function () {
console.log("working");
test1();
}, 5000);
I am trying to restart timer when ever chat.client.addMessage is executed.SetInterval is executed after every 5000ms until chat.client.addMessage is executed when ever that method is executed setInterval Function stops executing . Help will be appreciated:)
Share Improve this question edited Aug 16, 2013 at 9:25 Tushar Gupta - curioustushar 57.1k24 gold badges105 silver badges109 bronze badges asked Aug 16, 2013 at 9:23 user2137186user2137186 8376 gold badges23 silver badges39 bronze badges2 Answers
Reset to default 9You need to use clearInterval instead of clearTimeout
as clearTimeout is the inverse of setTimeout. You can use it in the same manner:
clearInterval(timer);
you need to add a function that clears the interval and then restarts it
function resetInterval() {
clearInterval(timer);
timer = setInterval(function() {
console.log("restarted interval");
test1();
}, 5000);
}
then you can simply call it as needed
chat.client.addMessage = function(data) {
resetInterval();
test2(data);
};