有人可以帮我了解为什么这不起作用吗?在ajax .load正在加载页面时,将显示loading.gif,但是它永远不会消失。这使我相信.ajaxStart和.ajaxStop函数都不会被调用(因为它最初也没有将其隐藏)。
TIA!
CSS:
#loadingDiv {
background-image: url('images/loading.gif');
height: 32px;
width: 32px;
margin: 50px auto 50px auto; }
jQuery的:
<script type="text/javascript">
$(document).ready(function()
{
$('#loadingDiv')
.hide()
.ajaxStart(function() {
$(this).show();
})
.ajaxStop(function() {
$(this).hide();
})
;
$("#results").load("i/getAllInfo.class.php"); return false;
};
</script>
最佳答案
您不需要从document ready函数返回false,但是您需要像这样添加右括号()
$("#results").load("i/getAllInfo.class.php"); return false;
}); //<----- you need the )
您的网址“i/getAllInfo.class.php”看起来不对。
尝试像这样在.ajaxStop()中注释掉$(this).hide():
.ajaxStop(function() {
//$(this).hide();
})
因为它可能只显示很少的时间,所以您看不到它。
这是为您准备的 fiddle :http://jsfiddle.net/GrsRT/11/
关于jquery - .ajaxStart和.ajaxStop不触发,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6604991/