我有下一个代码,用于根据对象的类(如过滤器)动态加载外部html中的内容。
<form id="login" action="Servlet" method="post">
当我在 $('.item1').click(function(){
$('.splash').hide(0);
$('#content').delay(50).fadeIn(600);
$('#loading').show();
$('#products').load('products.html .typeofproducts',function () {
$('#loading').hide(0);
$('#products').fadeIn(500);
});
});
<div id="wrapper">
<div id="splash">
<span class="item1">item1</span>
<span class="item2">item2</span>
<span class="item3">item3</span>
</div>
<div id="content" class="hidden">
<div class="col floatleft" id="menu">
<span class="item1">item1</span>
<span class="item2">item2</span>
<span class="item3">item3</span>
</div>
<div id="loading" class="hidden"><img src="loading.gif"></div>
<div class="col floatleft" id="products">
<!--load content here-->
</div>
</div>
</div>
内从".item1"
调用该函数时,内容加载没有问题,但是加载gif,不会隐藏......但是当我从{{1}调用函数时在"#splash"
中,所有函数都能正常工作,并且加载div隐藏。
答案 0 :(得分:0)
而不是$('#loading').hide(0);
使用$('#loading').hide();
或者你可以在完成后隐藏它
$('#products').load('products.html .typeofproducts',function () {
$('#products').fadeIn(500);
}).done(function() {
$('#loading').hide();
});
答案 1 :(得分:-1)
改变这个:
$('.splash').hide(0);
用这个:
$('#splash').hide(0);