Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Javascript setTimeout function in window load event... not working

Tags:

javascript

I've done this a month before... But now its not working... The code is

window.onload = function(){
 setTimeout(function(){
   alert("Hello");
 }, 10000);
};

This is written in script in head of the test.php page. The script and other tags are correct.

I would like to call a specific function every 10 seconds. The alert just shows once only. This is problem in every browser.... After this testing i would like to check the url every 2 seconds and call an AJAX function.

Any Help??

like image 603
Sunil Kumar Avatar asked Nov 08 '11 08:11

Sunil Kumar


3 Answers

That's what setTimeout does (executes once after a specified interval). You're looking for setInterval (calls a function repeatedly, with a fixed time delay between each call to that function):

window.onload = function(){
   setInterval(function(){
       alert("Hello");
   }, 10000);
};
like image 160
James Allardice Avatar answered Nov 12 '22 06:11

James Allardice


Use setInterval instead.

like image 30
Quentin Avatar answered Nov 12 '22 08:11

Quentin


var fn = function(){alert("Hello")};

It is possible using setTimeout:

window.onload =  function(){ setTimeout( function(){ fn();window.onload() },10000) };

but the best solution is setInterval:

window.onload = function() { setInterval(fn,10000)};
like image 2
abuduba Avatar answered Nov 12 '22 08:11

abuduba