我在IE7中遇到了jQuery Accordion Control的问题。
手风琴正常工作,直到我为包含元素添加背景颜色样式。
是否有人仍然可以找出IE7为什么会出现问题?
我创建了一个jsFiddle来测试问题:
http://jsfiddle.net/SrQUM/10/
当我点击其中一个顶级手风琴时,动画全部搞砸了。 当我点击其中一个底部手风琴时,一切都很好。 当我扩展其中一个元素时,它基本上看起来像第二个h3没有移动到正确的位置。
(我为每个部分使用手风琴,因为我希望能够一次扩展多个项目。)
答案 0 :(得分:1)
我能够解决这个问题。我不喜欢这个解决方案,但它确实有效,希望IE7的支持很快就会被淘汰。
问题在于手风琴演奏后的第一个元素在手风琴扩展时从未被推倒。修复是在手风琴后添加一个高度为0的虚拟div:
<div id="accordion">
<h3><a href="#">Header</a></h3>
<div>
<p>Some Content</p>
</div>
</div>
<p>Some Content Here</p>
<p>Some More Content</p>
第一段从未动过,但第二段是。所以我把它添加到我的代码中:
<script type="text/javascript">
$(function() {
$('#accordion').accordion().after('<div class="accordion-clear"></div>');
});
</script>
并包含一种风格:
.accordion-clear { height: 0px; clear: both; }
这似乎使一切正常。