[ACCEPTED]-Show a javascript loader image while function is executing-jquery
Although what you have should work, try doing 4 this:
$('#btn').click(function() {
$('#LoadingImage').show();
setTimeout(function() {
<time consuming function>
$('#LoadingImage').hide();
}, 0);
});
This will escape the call stack of 3 the event.
If THAT doesn't work, then post 2 more details as to what this mystery time 1 consuming function is.
For various reasons JS has to execute on 10 the main thread, which means that painting 9 is blocked as long as JS is executing -- even 8 multiprocess architectures like chrome cannot 7 repaint a tab if that tab is executing JS.
Your 6 only way to get painting to occur will be 5 to split up execution of your function, or 4 move the function onto an html5 worker thread 3 -- and they only work on the betas of Firefox 2 and Safari (or more generally any sufficiently 1 recent build of webkit proper)
More Related questions
We use cookies to improve the performance of the site. By staying on our site, you agree to the terms of use of cookies.