jQuery mobile在页面加载时添加加载中效果 document.ready 和window.onload执行顺序比较


Posted in Javascript onJuly 14, 2016

想要添加这个效果,先来弄明白页面的加载和事件执行顺序,看这个简单例子:

<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>

执行结果:9行>14行>11行,9行代码放置的上下位置不同,结果依然是一样的。弄明白上面的顺序之后,如果想让页面在加载之前显示jquery mobile的加载器,然后等页面数据请求执行完,图片等多媒体加载完之后,再关闭加载器的话,就可以按照以下思路来解决:

<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);//这里要延迟一下,直接调用无法显示加载器
//显示加载器.for jQuery Mobile 1.2.0 
function showLoader() {
$.mobile.loading('show', {
text: '正在登陆...', //加载器中显示的文字 
textVisible: true, //是否显示文字 
theme: 'a', //加载器主题样式a-e 
textonly: false, //是否只显示文字 
html: "" //要显示的html内容,如图片等 
});
}
//隐藏加载器.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秒,模拟页面请求数据耗时,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行的代码要稍作延迟执行,否则有可能上面引用的js文件还没有加载完,这时候调用showLoader方法,是无法正确执行,就不能显示加载器

2)关闭加载器可以放在document.ready或者window.onload中,具体看页面的执行情况需要。

3)如果网速足够快,两个图片瞬间加载完成,有可能看不到明显的加载器显示和关闭的过程。

以上所述是小编给大家介绍的jQuery mobile在页面加载时添加加载中效果 document.ready 和window.onload执行顺序比较 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Visual Studio中的jQuery智能提示设置方法
Mar 27 Javascript
jQuery EasyUI API 中文文档 - Tabs标签页/选项卡
Oct 01 Javascript
JavaScript中的style.display属性操作
Mar 27 Javascript
ExtJS下书写动态生成的xml(兼容火狐)
Apr 02 Javascript
jQuery中bind,live,delegate与one方法的用法及区别解析
Dec 30 Javascript
js实现随屏幕滚动的带缓冲效果的右下角广告代码
Sep 04 Javascript
CSS或者JS实现鼠标悬停显示另一元素
Jan 22 Javascript
修复jQuery tablesorter无法正确排序的bug(加千分位数字后)
Mar 30 Javascript
vuejs手把手教你写一个完整的购物车实例代码
Jul 06 Javascript
JS按条件 serialize() 对应标签的使用方法
Jul 24 Javascript
angular2 组件之间通过service互相传递的实例
Sep 30 Javascript
ES6对象操作实例详解
May 23 Javascript
javascript运算符语法全面概述
Jul 14 #Javascript
jQuery实现下拉框多选 jquery-multiselect 的实例代码
Jul 14 #Javascript
浅谈addEventListener和attachEvent的区别
Jul 14 #Javascript
ui组件之input多选下拉实现方法(带有搜索功能)
Jul 14 #Javascript
全面了解addEventListener和on的区别
Jul 14 #Javascript
js计算系统当前日期是星期几的方法
Jul 14 #Javascript
原生javascript 学习之js变量全面了解
Jul 14 #Javascript
You might like
PHP 配置open_basedir 让各虚拟站点独立运行
2009/11/12 PHP
php去除换行符的方法小结(PHP_EOL变量的使用)
2013/02/16 PHP
php获取当前时间的毫秒数的方法
2014/01/26 PHP
PHP中copy on write写时复制机制介绍
2014/05/13 PHP
PHP实现的购物车类实例
2015/06/17 PHP
WordPres对前端页面调试时的两个PHP函数使用小技巧
2015/12/22 PHP
Javascript 类型转换方法
2010/10/24 Javascript
JavaScript italics方法入门实例(把字符串显示为斜体)
2014/10/17 Javascript
JS判断浏览器是否支持某一个CSS3属性的方法
2014/10/17 Javascript
Vue开发实现吸顶效果的示例代码
2018/08/21 Javascript
浅谈webpack性能榨汁机(打包速度优化)
2019/01/09 Javascript
在vue中获取微信支付code及code被占用问题的解决方法
2019/04/16 Javascript
微信小程序在ios下Echarts图表不能滑动的问题解决
2019/07/10 Javascript
vue element 生成无线级左侧菜单的实现代码
2019/08/21 Javascript
[01:05:24]Ti4 冒泡赛第二天 iG vs NEWBEE 3
2014/07/15 DOTA
python time模块用法实例详解
2014/09/11 Python
在Python编程过程中用单元测试法调试代码的介绍
2015/04/02 Python
利用Python的Twisted框架实现webshell密码扫描器的教程
2015/04/16 Python
Python抓取淘宝下拉框关键词的方法
2015/07/08 Python
详解JavaScript编程中的window与window.screen对象
2015/10/26 Python
python遍历序列enumerate函数浅析
2017/10/17 Python
对python sklearn one-hot编码详解
2018/07/10 Python
idea创建springMVC框架和配置小文件的教程图解
2018/09/18 Python
html5借用repeating-linear-gradient实现一把刻度尺(ruler)
2019/09/09 HTML / CSS
俄罗斯茶和咖啡网上商店:Tea.ru
2021/01/26 全球购物
测控技术与仪器个人求职信范文
2013/12/30 职场文书
应届大学生简历中的自我评价
2014/01/15 职场文书
委托证明书
2014/09/17 职场文书
政风行风自查自纠报告
2014/10/21 职场文书
员工工作能力评语
2014/12/31 职场文书
银行客户经理岗位职责
2015/04/09 职场文书
2015年学校体育工作总结
2015/04/22 职场文书
2015教师个人师德工作总结
2015/10/23 职场文书
Python3 如何开启自带http服务
2021/05/18 Python
Nginx代理Redis哨兵主从配置的实现
2022/07/15 Servers
mysql sock 文件解析及作用讲解
2022/07/15 MySQL