IE7问题与jQuery手风琴和背景颜色

时间:2011-10-18 16:13:02

标签: jquery internet-explorer jquery-ui internet-explorer-7 jquery-ui-accordion

我在IE7中遇到了jQuery Accordion Control的问题。

手风琴正常工作,直到我为包含元素添加背景颜色样式。

是否有人仍然可以找出IE7为什么会出现问题?

我创建了一个jsFiddle来测试问题:
http://jsfiddle.net/SrQUM/10/

当我点击其中一个顶级手风琴时,动画全部搞砸了。 当我点击其中一个底部手风琴时,一切都很好。 当我扩展其中一个元素时,它基本上看起来像第二个h3没有移动到正确的位置。

(我为每个部分使用手风琴,因为我希望能够一次扩展多个项目。)

1 个答案:

答案 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; }

这似乎使一切正常。