我有一张包含内容的图表和一张图片,点击后会显示div中包含的隐藏内容。这个div有另一个表来格式化内容。现在,当我在IE和Chrome中测试时,隐藏的内容会根据点击的按钮上下滑动。但是当我在firefox中执行此操作时,内容就会出现并消失,没有顺畅的滑动。谁能告诉我为什么。如果我将显示按钮从顶部表格中移出并将其插入两个表格之间,则上下滑动可以顺利进行。唯一的问题是我需要显示按钮在内容
我的脚本看起来像这样
<script type="text/javascript">
//<![CDATA[
$(function() {
$(document).ready(function() {
$(".slidingDiv").hide()
$('.show').click(function() {
$(".slidingDiv").slideDown(1000);
return false;
});
$('.hide').click(function() {
$(".slidingDiv").slideUp(1000);
return false;
});
});
});
//]]>
</script>
出现在页面的头部
然后我的页面正文代码看起来像
<table style="width: 100%;" align="left" border="0">
<tbody>
<tr>
<td>content here</td>
<td>and here</td>
<td><a class="show"><img src="images/more.jpg" onmouseout="this.src='images/more.jpg';" onmouseover="this.src='images/more_over.jpg';" /></a></td>
</tr>
</tbody>
</table>
<div class="slidingDiv">
<table style="width: 100%;" align="left" border="0">
<tbody>
<tr>
<td>content hidden</td>
<td>content hidden</td>
<td>content hidden</td>
</tr>
<tr>
<td>content hidden</td>
<td>content hidden</td>
</tr>
<tr>
<td>content hidden</td>
<td>content hidden</td>
</tr>
</tbody>
</table>
<a class="hide"><img src="images/close.jpg" onmouseout="this.src='images/close.jpg';" onmouseover="this.src='images/close_over.jpg';" /></a>
</div>
答案 0 :(得分:0)
检查此JSFiddle:http://jsfiddle.net/s3Fpt/3/(1)
这适用于Firefox
似乎你的div和table中的align="left" border="0"
会对动画产生负面影响。这不是问题,因为您应该只使用HTML定义文档,而不是样式。此外,align是一个已弃用的属性,无论如何都应该避免。
使用css:
可以完成对齐和边框的样式设置td, div.slidingDiv
{
border: 0;
text-align: left; // Though not really necessary because this is default
}
(1)编辑:删除额外的功能包装,如ScottE所注意到的