Jquery/Ajax 加载程序的时间取决于页面的加载时间
Jquery/Ajax loader's time to depend on page's loading time
情况:
我正在寻找 jquery/ajax 装载程序,发现 this thread 有用。
现在我使用 this fiddle 作为我的加载器。
一切正常,但我只有一个担心。
在js代码下面,'responseTime'固定为2.5秒。
$.mockjax({ url: "/mockjax", responseTime: 2500 });
因此,如果我的页面加载时间超过 5 秒,加载程序只会以 2.5 秒的速度运行。
问题:
我如何将加载程序的时间依赖于我页面的不可预测的加载时间?
非常感激您的帮忙。谢谢!
您可以显示加载器 gif,直到 window 由
完全加载
$(window).load(function(){
}
然后这样做:
$(window).load(function(){
$('#cover').fadeOut(1000);
});
#cover {
background: url("http://www.aveva.com/Images/ajax-loader.gif") no-repeat scroll center center #FFF;
position: absolute;
height: 100%;
width: 100%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div id="cover"></div>
<img src="https://i.ytimg.com/vi/lklDJ5VRQao/maxresdefault.jpg" />
它将以显示 gif 开始,一旦内容完全加载就会淡出。
我从 this site 找到了我要找的东西。
下面是我使用的代码。
$(document).ready(function(){
$("#spinner").bind("ajaxSend", function() {
$(this).show();
}).bind("ajaxStop", function() {
$(this).hide();
}).bind("ajaxError", function() {
$(this).hide();
});
$('#button-upload').click(function() {
$('#spinner').show();
});
});
.spinner {
position: fixed;
top: 50%;
left: 50%;
margin-left: -50px;
margin-top: -50px;
text-align:center;
z-index:1234;
overflow: auto;
width: 100px;
height: 102px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="spinner" class="spinner" style="display:none;">
<img id="img-spinner" src="http://sampsonresume.com/labs/pIkfp.gif" alt="Loading"/>
</div>
<input type = "submit" value = "Upload" id="button-upload" />
此代码段中的加载程序不确定,但它在我的网站上运行完美。
无论如何感谢你们的帮助 =)
情况:
我正在寻找 jquery/ajax 装载程序,发现 this thread 有用。
现在我使用 this fiddle 作为我的加载器。
一切正常,但我只有一个担心。
在js代码下面,'responseTime'固定为2.5秒。
$.mockjax({ url: "/mockjax", responseTime: 2500 });
因此,如果我的页面加载时间超过 5 秒,加载程序只会以 2.5 秒的速度运行。
问题:
我如何将加载程序的时间依赖于我页面的不可预测的加载时间?
非常感激您的帮忙。谢谢!
您可以显示加载器 gif,直到 window 由
完全加载$(window).load(function(){
}
然后这样做:
$(window).load(function(){
$('#cover').fadeOut(1000);
});
#cover {
background: url("http://www.aveva.com/Images/ajax-loader.gif") no-repeat scroll center center #FFF;
position: absolute;
height: 100%;
width: 100%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div id="cover"></div>
<img src="https://i.ytimg.com/vi/lklDJ5VRQao/maxresdefault.jpg" />
它将以显示 gif 开始,一旦内容完全加载就会淡出。
我从 this site 找到了我要找的东西。
下面是我使用的代码。
$(document).ready(function(){
$("#spinner").bind("ajaxSend", function() {
$(this).show();
}).bind("ajaxStop", function() {
$(this).hide();
}).bind("ajaxError", function() {
$(this).hide();
});
$('#button-upload').click(function() {
$('#spinner').show();
});
});
.spinner {
position: fixed;
top: 50%;
left: 50%;
margin-left: -50px;
margin-top: -50px;
text-align:center;
z-index:1234;
overflow: auto;
width: 100px;
height: 102px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="spinner" class="spinner" style="display:none;">
<img id="img-spinner" src="http://sampsonresume.com/labs/pIkfp.gif" alt="Loading"/>
</div>
<input type = "submit" value = "Upload" id="button-upload" />
此代码段中的加载程序不确定,但它在我的网站上运行完美。
无论如何感谢你们的帮助 =)