js的延迟执行问题分析


Posted in Javascript onJune 23, 2014

看这段代码:

<body>
  <script src="deffer.js"></script>
  content
 </body>

deffer.js的内容为:

alert(1)

这样在alert窗口没有被关闭之前,页面都会是一片空白。因为alert窗口阻止了页面的继续渲染。

为了避免此类问题,html规范里定义了deffer和async属性,这两个属性的具体定义这里不讨论,反正他们都是用来告诉浏览器,一定要在页面渲染完成以后再执行本脚本的内容,这样脚本执行的时候页面已经渲染完毕了。

<body>
  <script deffer async src="deffer.js"></script>
  content
 </body>

注意,对于多个加了deffer或者async的脚本,他们的执行顺序和他们在页面上出现的顺序无关。即使html规范定义了deffer脚本应该按照顺序来执行,但是浏览器事实上并没有全部遵守这个约定。

Javascript 相关文章推荐
js图片自动切换效果处理代码
May 07 Javascript
jquery实现简单的全选和反选功能
Jan 02 Javascript
jQuery文本框得到与失去焦点动态改变样式效果
Sep 08 Javascript
node.js请求HTTPS报错:UNABLE_TO_VERIFY_LEAF_SIGNATURE\的解决方法
Dec 18 Javascript
作为老司机使用 React 总结的 11 个经验教训
Apr 08 Javascript
Django使用多数据库的方法
Sep 06 Javascript
Vue的土著指令和自定义指令实例详解
Feb 04 Javascript
JavaScript笛卡尔积超简单实现算法示例
Jul 30 Javascript
vue-cli 目录结构详细讲解总结
Jan 15 Javascript
浅谈Javascript中的对象和继承
Apr 19 Javascript
Jquery实现获取子元素的方法分析
Aug 24 jQuery
Node配合WebSocket做多文件下载以及进度回传
Nov 07 Javascript
JQEasy-ui在IE9以下版本中二次加载的问题分析及处理方法
Jun 23 #Javascript
教你用AngularJS框架一行JS代码实现控件验证效果
Jun 23 #Javascript
js自定义鼠标右键的实现原理及源码
Jun 23 #Javascript
js代码实现的加入收藏效果并兼容主流浏览器
Jun 23 #Javascript
用jquery的方法制作一个简单的导航栏
Jun 23 #Javascript
jquery的attr方法禁用表单元素禁用输入内容
Jun 23 #Javascript
JavaScript获取某年某月的最后一天附截图
Jun 23 #Javascript
You might like
基于mysql的论坛(5)
2006/10/09 PHP
PHP缓存集成库phpFastCache用法
2014/12/15 PHP
PHP动态规划解决0-1背包问题实例分析
2015/03/23 PHP
详解PHP的Yii框架中日志的相关配置及使用
2015/12/08 PHP
php 解决substr()截取中文字符乱码问题
2016/07/18 PHP
PHP获取链表中倒数第K个节点的方法
2018/01/18 PHP
php函数式编程简单示例
2019/08/08 PHP
LBS blog sql注射漏洞[All version]-官方已有补丁
2007/08/26 Javascript
为jquery.ui.dialog 增加“自动记住关闭时的位置”的功能
2009/11/24 Javascript
Jquery+JSon 无刷新分页实现代码
2010/04/01 Javascript
jquery实现固定顶部导航效果(仿蘑菇街)
2013/03/21 Javascript
jquery事件的ready()方法使用详解
2015/11/11 Javascript
javascript原生ajax写法分享
2016/04/10 Javascript
JS实现微信摇一摇原理解析
2017/07/22 Javascript
React 使用recharts实现散点地图的示例代码
2018/12/07 Javascript
微信小程序实现展示评分结果功能
2019/02/15 Javascript
VSCode使用之Vue工程配置eslint
2019/04/30 Javascript
基于jQuery的时间戳与日期间的转化
2019/06/21 jQuery
js设计模式之代理模式及订阅发布模式实例详解
2019/08/15 Javascript
Vue+tracking.js 实现前端人脸检测功能
2020/04/16 Javascript
详解ES6新增字符串扩张方法includes()、startsWith()、endsWith()
2020/05/12 Javascript
[47:52]DOTA2-DPC中国联赛正赛 iG vs LBZS BO3 第二场 3月4日
2021/03/11 DOTA
Python的几个高级语法概念浅析(lambda表达式闭包装饰器)
2016/05/28 Python
解决python matplotlib imshow无法显示的问题
2018/05/24 Python
Python函数的定义方式与函数参数问题实例分析
2019/12/26 Python
详解Django自定义图片和文件上传路径(upload_to)的2种方式
2020/12/01 Python
html5基础教程常用技巧整理
2013/08/20 HTML / CSS
美国最大的存储市场:SpareFoot
2018/07/23 全球购物
皮肤科医师岗位职责
2013/12/04 职场文书
幼儿园托班开学寄语
2014/01/18 职场文书
医学专业自荐信
2014/06/14 职场文书
精神病医院见习报告
2014/11/03 职场文书
同学毕业留言寄语
2015/02/27 职场文书
幼儿园新学期开学寄语
2015/05/27 职场文书
Python scrapy爬取起点中文网小说榜单
2021/06/13 Python
全新239军机修复记
2022/04/05 无线电