I use the setInterval function in a website, and it works fine in IE, Chrome, Firefox and Safari. When i try it on ipad/iphone (safari mobile) i get problem: if i scroll the screen, the setInterval function pauses and it resumes only when i stop scrolling!
is there a way to prevent the function from pausing?
Thanks
I'm afraid no, there's no way to prevent such behaviour. There's a plenty of topics here in SO about this problem (more-o-less related), here's a particularly interesting one. Its summary is simple:
iOS elastic scroll can't be tracked. There's no event listener for it
+ both timeout / interval doesn't execute during scroll. And because there's no requestAnimationFrame in iOS5, this seems impossible to
solve.
iOS6 Safari suffers from a bug that kills timers that are created while a page is scrolling.
There is a fix to this problem provided by kTmnh by recreating timers after scrolling finishes
https://gist.github.com/3798925.
Check @Pattishall answer on this subject
iOS 6 js events function not called if has setTimeout in it