2011-12-13 82 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

相关问题