Just as the title says: setInterval
is only firing its callback once.
manifest.json:
{
//...
"content_scripts" : [{
"js" : ["code.js"],
//...
}],
//...
}
code.js (example):
setInterval(alert('only shown once'),2000);
Why, and how I could fix it? The code works well outside of an extension (even in a bookmarklet).
setInterval(function() { alert('only shown once') },2000);
You need to pass a function reference like alert
and not a return value alert()
setInterval
isn't working at all.
The first argument should be a function, you are passing it the return value of alert()
which isn't a function.
Use the three argument version:
setInterval(function,time,array_of_arguments_to_call_function_with);
setInterval(alert,2000,['only shown once']);
The way you wrote it it's wrong:
setInterval()
wants a function and a numerical value: setInterval(function(){//your code}, timeInterval)
.