,当我在一个表中使用它我有jQuery的效果基本show和了slideDown一个小问题。我有这样的HTML(也主要由jQuery的产生,但是这并不重要):的jQuery了slideDown和效果基本show看起来不正确
<tr class="expandable-container">
<td colspan="10">
<div id="3_expandable" style="display: none;">
<table class="innerTable">
...
</table>
</div>
</td>
</tr>
风格的外部表:
.main-table {
border-radius: 0.5em 0.5em 0 0;
width: 129em;
background-color: #f1f1f1;
margin-top: 1.5em;
z-index: 10;
position: relative;
}
.main-table td, .main-table th {
padding: 1.2em 0.7em;
border-collapse: collapse;
border-left: 0.1em solid #dedede;
}
.main-table td:first-child, .main-table th:first-child {
border-left: 0 solid;
}
.expandable-container td {
padding: 0 !important;
background-color: red; /* inserted to identify the problem */
}
由于效果基本show和了slideDown不要在表格元素工作,我在div中包裹我的内容(这是另一个表,但它不重要),这当然是隐藏的。当我应用slideUp和slideDown方法并在Firefox 6上测试它时,出于某种原因,动画出现了skippy。因此,我设置了一个10秒长的滑动时间来检查它,并确定当动画开始时,td元素立即以height == 20px出现,并且div在其中滑动。然后一切都按预期进行 - 当div超过td的初始意外高度时,它会覆盖它并扩展到预期的大小。
这发生在Firefox 6,它的工作原理没有在Chrome 13的任何问题,我没有测试它在IE浏览器的任何版本,因为它不是预期的浏览器,所以我没有去通过所有的麻烦并将其安装在Linux机器上。没有在Opera上测试过,因为现在有一些其他的脚本崩溃了,它将被修复。
我附加了slideDown动画的第一时刻的截图 - 当TD出现无章可循(红色背景)。
我的问题 - 是有办法或解决方法来解决它?
由于沙龙的建议,我增加一条,作为的jsfiddle。奇怪的是,它工作得很好,即使在FF6上: jsFiddle rendition
编辑:我修复了导致Opera 11崩溃的问题,所以我能够测试它。所以 - 它也发生在Opera 11上。
添加http://jsfiddle.net/ - 让人们看起来更容易它在行动中。 – Ariel
什么版本的jQuery? – Ariel
好点,我会尽力找到一些时间,并做到这一点(现在很多工作)。 – Przemek