2014-10-07 45 views
4

爲什麼這個函數不能在ie 7,8(延遲和淡入淡出)上工作?爲什麼這個函數不能在ie 7,8(延遲和淡入淡出)上工作?

在其他瀏覽器上延遲和淡入淡出效果不錯。

但對即同一時間的所有元素顯示(不耽誤和淡入)。

http://jsfiddle.net/7u8qmdoo/2/

<script> 
$(document).ready(function() 
{  
    var i = 0; 
    (function fadeInNext() 
    {   
     $("#num" + i).fadeTo(1000,1); 
     console.log("Fading in " + i); 
     i++; 
     if (i < 8) 
     { 
      setTimeout(fadeInNext, 2000); 
     } 
    })(); 
}); 
</script> 
+0

工作正常。什麼版本導致你的問題? – 2014-10-07 13:37:26

+0

我測試ie ie 7-8 – 2014-10-07 13:38:06

+1

取出'console.log()' – 2014-10-07 13:43:33

回答

3

你可以做一個基本的for循環使用delay這個簡單,但你還需要使用fadeIn代替fadeTofadeTo不透明度動畫不會被IE7處理:

JSFiddle:http://jsfiddle.net/TrueBlueAussie/7u8qmdoo/6/

$(document).ready(function() 
{  
    for (var i = 0; i < 8; i++){ 
     $("#num" + i).delay(i * 2000).fadeIn(1000); 
    } 
}); 

這是一樣的:在IE10

$("#num0").delay(0).fadeIn(1000,1); 
$("#num1").delay(2000).fadeIn(1000,1); 
$("#num2").delay(4000).fadeIn(1000,1); 

+0

IE7不工作.... – 2014-10-07 13:42:29

+0

它的褪色造成你在IE7中的悲傷...我會盡力爲你找到一個更好的選擇。 – 2014-10-07 13:44:55

+0

三江源^^ ...... – 2014-10-07 13:46:53