是否可以显示“加载..”动画,只有当ajax调用超过说,一秒钟?一些我的ajax电话很快,但是在消失之前,我仍然看到加载图标只有一秒钟。可能只是我,但我觉得它分散注意力。我不想完全删除它。有什么建议么?这是我的代码 –
$('#loading').hide() .ajaxStart(function() { $(this).show(); }) .ajaxStop(function() { $(this).hide(); }); <div id="loading"> <img alt="Loading,please wait.." src="/content/images/spinner.gif" /> </div>
解决方法
你应该把你的代码放在一个计时器中:
var $loader = $('#loading'),timer; $loader.hide() .ajaxStart(function() { timer && clearTimeout(timer); timer = setTimeout(function() { $loader.show(); },1000); }) .ajaxStop(function() { clearTimeout(timer); $loader.hide(); });