我想创建一个页面,其中一个表格在加载时会淡入(从透明到不透明)。我试过使用:
$(document).ready(function(){
$('#table1').hide();
$('#table1').fadeIn(1000);
});
它有点工作,但表格出现,迅速消失,然后顺利淡入。有没有办法在不预先出现表格的情况下实现淡入?
我想创建一个页面,其中一个表格在加载时会淡入(从透明到不透明)。我试过使用:
$(document).ready(function(){
$('#table1').hide();
$('#table1').fadeIn(1000);
});
它有点工作,但表格出现,迅速消失,然后顺利淡入。有没有办法在不预先出现表格的情况下实现淡入?
怎么了:
在 CSSdisplay:none;
中为您的表格设置:
#table1{
display:none;
}
jQuery:
$('#table1').fadeIn(1000);
您可以通过应用
显示:无
样式到表格,但是这会导致可访问性问题,因为没有 javascript 的用户将无法看到它。
是的。只需在 CSS 中将表格设置为 display:none,然后删除初始隐藏
CSS
#table1{display:none}
jQuery:
$(document).ready(function(){
$('#table1').fadeIn(1000);
})
直到整个页面并且它的依赖项已经加载( $(document).ready 函数),jQuery才会被触发,但是表格一旦加载就会显示在页面上,这将始终在 jQuery 触发之前。一旦 jQuery 触发,它会隐藏表格,然后将其淡入。您只需要使用 CSS 将其隐藏,然后将其淡入。简单:)
这是使用 jQuery 在您的表中淡入淡出的完整解决方案。
1) 首先在 header 标签中包含最新的 jQuery.js 和 JQuery-UI java 脚本文件。
2)HTML:
<table id="table1" cellpadding="5" cellspacing="1" width="50%">
<tr>
<th>
Column1
</th>
<th>
Column2
</th>
<th>
Column3
</th>
</tr>
<tr>
<td>
data1
</td>
<td>
data2
</td>
<td>
data3
</td>
</tr>
</table>
3)CSS:
#table1{
border:1px solid #556688;
background:#eee;
display:none;
}
th{
text-align:left;
}
td,th{
border:1px solid #556688;
}
4)脚本标签中的JQuery:
$(document).ready(function() {
$('#table1').fadeIn(10000);
});
在垃圾箱上试试: http: //codebins.com/bin/4ldqpaj
在您的 CSS 中使用dispay:none
以在淡入之前隐藏表格。
该表首先显示,因为 Javascript 是在 DOM 加载后执行的。您最初应该在 CSS 中使用 display:none 来隐藏表格。