2011-12-13 78 views
1

我米試圖顯示和隱藏使用jquery淡入和淡出方法中的一些元素(跨度)所以就用下面的代碼:Jquery的淡入淡出不IE8工作,但在鉻工作,火狐

<script type="text/javascript"> 
$(document).ready(function(){ 

$("a.moretag").click(function(){ 
$("span.hideelement").fadeIn("slow"); 
$("a.moretag").fadeOut("slow"); 
$("a.lesstag").fadeIn("slow"); 
}); 


$("a.lesstag").click(function(){ 
$("span.hideelement").fadeOut("slow"); 
$("a.lesstag").fadeOut("slow"); 
$("a.moretag").fadeIn("slow"); 
}); 

}); 

</script> 

..... 
<span class="hideelement" style="display:none;">First</span> 
<span class="hideelement" style="display:none;">Second</span> 
. 
. 
<span class="hideelement" style="display:none;">Tenth</span> 
<a class="moretag"><strong>More</strong></a> 
<a class="lesstag" style="display:none;"><strong>Less</strong></a> 
..... 

在上面的代碼中當用戶點擊「更多」鏈接時,它會顯示先前隱藏的元素(display:none),更多鏈接消失,顯示「less」鏈接。

在這裏,當我點擊「更多」鏈接它的工作正常意味着它消失並顯示「少」鏈接副版本。但它不顯示/隱藏隱藏的span元素。

此代碼在Chrome,Mozilla和IE7中效果很好,但在IE8中無法使用。代碼有什麼問題。請幫幫我。

感謝ADVANCE。

+1

請分享所有動畫對象爲html –

+0

好的,我更新了我的問題。 – user392406

回答

3

您必須在IE8處使用fadeOutFadeIn。 IE9和IE7可以運行它,但ib IE8你不能讓fade動畫。您可以使用show()hide();

$(document).ready(function(){ 

$("a.moretag").click(function(){ 
$("span.hideelement").show("slow"); 
$("a.moretag").hide("slow"); 
$("a.lesstag").show("slow"); 
}); 


$("a.lesstag").click(function(){ 
$("span.hideelement").hide("slow"); 
$("a.lesstag").hide("slow"); 
$("a.moretag").show("slow"); 
}); 

}); 

嘗試在此link

這個功能有選項可以使用IE8 fade effects,改變displayinherit

例子:

.MyDiv{ 
    display:inherit; 
} 
+1

嗨,感謝您的幫助。通過用show/hide替換fadeIn/fadeOut工作正常。 – user392406

相關問題