javascript question - why does “window.location” not ensure my spinner.gif animation works?

Hi,

It seems when I use "window.location" as a means to redirect to the API when my longer running transaction is does not ensure the animation for the spinner gif I have works. Any ideas how to fix this? ie. I see the gif ok but it not being animated. Is there another way in Javascript to force the redirect once the gif animation starts? What's the easiest way in Rails to get a "spinner" being show for the initial spash page whilst it goes to the database to prepare the detail for the main page.

<div id="loading"> </div>

<script type="text/javascript" charset="utf-8">    function show_spinner() {      $("form").hide()      $("loading").show()      window.location = "/weekends/display" # <== SEEMS TO STOP SPINNER ANIMATION     }    window.onload=show_spinner; </script>

CSS:

#loading {   width:100px;   height: 100px;   position: fixed;   top: 50%;   left: 50%;   background:url(/images/ajax-loader.gif) no-repeat center #fff;   text-align:center;   padding:10px;   font:normal 16px Tahoma, Geneva, sans-serif;   # border:1px solid #666;   margin-left: -50px;   margin-top: -50px;   z-index:2;   overflow: auto; }

In general I've found that only Internet Explorer (6, 7 & 8) has this problem, whereas other browsers such as Firefox and Safari are ok. In your case is the problem only with IE?

actually - I've had some advice towards a better option - now I'm using jQuery and doing:

$('body').ajaxStart(function(){   $('#spinner').show(); }); $('body').ajaxStop(function(){   $('#spinner').hide(); });