2014-02-26 18 views
1

我有以下腳本工作:

function AnimateRotate(d){ 
    var elem = $("#imgLogoWM"); 
    //elem.fadeIn(2000); 
    $(elem).hide(); 
    $(elem).each(function(i) { 
     if (this.complete) { 
      $(this).fadeIn(1500); 
     } else { 
      $(this).load(function() { 
       $(this).fadeIn(2000); 
      }); 
     } 
    }); 

    /*$({deg: -60}).animate({deg: d}, { 
     duration: 2000, 
     step: function(now){ 
      elem.css({ 
       transform: "rotate(" + now + "deg)" 
      }); 
      elem.fadeIn(2000); 
     } 
    });*/ 
} 

$(window).load(function(){ 
    timer = setTimeout('auto_reload()', 1800000); 
    AnimateRotate(0); 
}); 

var timer = null; 
function auto_reload() { 
    window.location = 'index.htm'; 
} 

它在IE < 10和FF和Chrome和前衛和Opera的偉大工程。 AnimateRotate(0);在IE10中不起作用。任何想法如何繞過它,所以它在IE10中也有效?

+0

你控制檯告訴你什麼? – Turnip

+0

我正在使用JQuery 1.11.0。定時器線路正常工作,但AnimateRotate不是 – Si8

+0

什麼具體不起作用? –

回答

2

綜上所述:使用文檔的準備,而不是onload事件:api.jquery.com/ready

$(document).ready(...function stuff ...) or with less code 
$(function(){ ...function stuff ...}); 

或許你喜歡交出變量名 「auto_reload」

setTimeout(auto_reload, 1800000) 

稍後將被執行,而不是立即執行的函數「auto_reload()」到超時方法。結帳,如果IE確實照顧到這一點。

+0

這很奇怪,突然它消失:/ – Si8

+0

有關超時的信息看看http://devdocs.io/dom/window.settimeout – dsuess

+0

我關閉了頁面,並重新打開,現在它又走了! – Si8