jQuery mobile在頁面加載時添加加載中效果 document.ready 和window.onload執(zhí)行順序比較
想要添加這個效果,先來弄明白頁面的加載和事件執(zhí)行順序,看這個簡單例子:
<html xmlns="http://www.w3.org/1999/xhtml">
<head >
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>驗證加載順序</title>
<script src="../Scripts/jquery-1.7.1.js"></script>
<link href="../Scripts/Mobile/jquery.mobile-1.4.0.min.css" rel="stylesheet" />
<script src="../Scripts/Mobile/jquery.mobile-1.4.0.min.js"></script>
<script>
alert("DOM還沒加載");
window.onload = function () {
alert('onload,圖片加載完');
}
$(document).ready(function () {
alert('ready,dom加載完');
})
</script>
</head>
<body >
<form id="form1" runat="server">
<img src="http://images.aviary.com/imagesv5/feather_default.jpg" />
<img src="http://car0.autoimg.cn/car/upload/2015/1/8/v_20150108092921264345010.jpg" />
</form>
</body>
</html>
執(zhí)行結(jié)果:9行>14行>11行,9行代碼放置的上下位置不同,結(jié)果依然是一樣的。弄明白上面的順序之后,如果想讓頁面在加載之前顯示jquery mobile的加載器,然后等頁面數(shù)據(jù)請求執(zhí)行完,圖片等多媒體加載完之后,再關閉加載器的話,就可以按照以下思路來解決:
<html xmlns="http://www.w3.org/1999/xhtml">
<head >
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>驗證加載順序</title>
<script src="../Scripts/jquery-1.7.1.js"></script>
<link href="../Scripts/Mobile/jquery.mobile-1.4.0.min.css" rel="stylesheet" />
<script src="../Scripts/Mobile/jquery.mobile-1.4.0.min.js"></script>
<script>
setTimeout('showLoader()', 100);//這里要延遲一下,直接調(diào)用無法顯示加載器
//顯示加載器.for jQuery Mobile 1.2.0
function showLoader() {
$.mobile.loading('show', {
text: '正在登陸...', //加載器中顯示的文字
textVisible: true, //是否顯示文字
theme: 'a', //加載器主題樣式a-e
textonly: false, //是否只顯示文字
html: "" //要顯示的html內(nèi)容,如圖片等
});
}
//隱藏加載器.for jQuery Mobile 1.2.0
function hideLoader() {
$.mobile.loading('hide');
}
window.onload = function () {
hideLoader();
//setTimeout('hideLoader()', 5000);//延遲5秒,模擬圖片和多媒體加載耗時
}
$(document).ready(function () {
//setTimeout('hideLoader()', 5000);//延遲5秒,模擬頁面請求數(shù)據(jù)耗時,ajax異步請求等放在這里
})
</script>
</head>
<body >
<form id="form1" runat="server">
<img src="http://images.aviary.com/imagesv5/feather_default.jpg" />
<img src="http://car0.autoimg.cn/car/upload/2015/1/8/v_20150108092921264345010.jpg" />
</form>
</body>
</html>
說明:
1)9行的代碼要稍作延遲執(zhí)行,否則有可能上面引用的js文件還沒有加載完,這時候調(diào)用showLoader方法,是無法正確執(zhí)行,就不能顯示加載器
2)關閉加載器可以放在document.ready或者window.onload中,具體看頁面的執(zhí)行情況需要。
3)如果網(wǎng)速足夠快,兩個圖片瞬間加載完成,有可能看不到明顯的加載器顯示和關閉的過程。
以上所述是小編給大家介紹的jQuery mobile在頁面加載時添加加載中效果 document.ready 和window.onload執(zhí)行順序比較 ,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
jQuery中checkbox反復調(diào)用attr(''checked'', true/false)只有第一次生效的解決方法
這篇文章主要介紹了jQuery中checkbox反復調(diào)用attr('checked', true/false)只有第一次生效的解決方法,通過使用prop方法代替attr方法來解決此問題,需要的朋友可以參考下2016-11-11
jquery彈出框插件jquery.ui.dialog用法分析
這篇文章主要介紹了jquery彈出框插件jquery.ui.dialog用法,結(jié)合實例形式分析了彈出框插件jquery.ui.dialog的功能、下載、使用方法與相關注意事項,需要的朋友可以參考下2016-08-08
jquery load()在firefox(火狐)下顯示不正常的解決方法
覺得應該是由于 直接將www.baidu.com的內(nèi)容放到div中,對于較嚴格的FireFox可能不會處理用cssviewter查看處理后的頁面源碼果然發(fā)現(xiàn)div中為空2011-04-04
通過JQuery將DIV的滾動條滾動到指定的位置方便自動定位
本文為大家介紹下將DIV的滾動條滾動到其子元素所在的位置,方便自動定位,需要的朋友可以參考下2014-05-05
jquery ajax,ashx,json的用法總結(jié)
本篇文章主要是對jquery ajax,ashx,json的用法進行了詳細的總結(jié)介紹,需要的朋友可以過來參考下,希望對大家有所幫助2014-02-02

