JS脚本defer的作用 (转自一路前行)
中的defer作用是文档加载完毕了再执行脚本,这样回避免找不到对象的问题
<script defer>
function document.body.onload() {
alert(document.body.offsetHeight);
}
</script>
加上 defer 等于在页面完全在入后再执行,相当于 window.onload ,但应用上比 window.onload 更灵活!
defer是脚本程序强大功能中的一个“无名英雄”。它告诉浏览器Script段包含了无需立即执行的代码,并且,与SRC属性联合使用,它还可以使这些脚本在后台被下载,前台的内容则正常显示给用户。
--但是 文档加载完毕了再执行脚本
最后请注意两点:
1、不要在defer型的脚本程序段中调用document.write命令,因为document.write将产生直接输出效果。
2、而且,不要在defer型脚本程序段中包括任何立即执行脚本要使用的全局变量或者函数。
一个常用的优化性能的方法是:当脚本不需要立即运行时,在<SCRIPT>标签中设置“defer”属性。 (立即脚本没有被包含在一个function块中,因此会在加载过程中执行。) 设置“defer”属性后,IE就不必等待该脚本装载和执行完毕。这样页面加载会更快。一般来说,这也表明立即脚本最好放在function块中,并在document或者body对象的onload 句柄中处理该函数。在有一些脚本需要依赖用户操作而执行时----例如点击按钮,或者移动鼠标到某个区域----使用该属性非常有用。但当有一些脚本需要在页面加载过程中或加载完成后执行,使用defer属性得到的好处就不太大。
转载于:https://www.cnblogs.com/ly5201314/archive/2008/12/01/1344838.html
JS脚本defer的作用 (转自一路前行)相关推荐
- JS脚本defer的作用
< DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd> <script s ...
- html中body末尾的script,【笔记】JS脚本为什么要放在body最后面以及async和defer的异同点...
1.没有defer或async 浏览器遇到脚本的时候会暂停渲染并立即加载执行脚本(外部脚本),"立即"指的是在渲染该 script 标签之下的文档元素之前,也就是说不等待后续载入的 ...
- js的defer属性
js的defer属性说明:<script src="js.js" type="text/javascript defer="defer"/> ...
- js脚本的延迟执行和异步执行
JavaScript是什么? 简单来说,JavaScript是一种以ECMAScript作为语言标准的编程语言,通常我们讲的ECMAScript更多被等同于JavaScript,但完整JavaScri ...
- script 标签中async 属性和defer 属性作用以及区别?
接下来我们对比下 defer 和 async 属性的区别: 其中蓝色线代表JavaScript加载:红色线代表JavaScript执行:绿色线代表 HTML 解析. 1)情况1 <scripts ...
- 动态加载JS脚本的4种方法
动态加载JS脚本的4种方法 2006-12-04 15:33 要实现动态加载JS脚本有4种方法: 1.直接document.write <script language="javasc ...
- 动态加载JS脚本【转】
原文:http://mario-design.iteye.com/blog/147810 要实现动态加载JS脚本有4种方法: 1.直接document.write <script languag ...
- 客户端的js js脚本的引入 js的解析过程
web浏览器中的JavaScript web浏览器中的js通常称为客户端的JavaScript 客户端 JavaScript window对象是所有客户端JavaScript特性和api的主要接入点. ...
- created写法_vue.js中created方法作用
这是它的一个生命周期钩子函数,就是一个vue实例被生成后调用这个函数.一个vue实例被生成后还要绑定到某个html元素上,之后还要进行编译,然后再插入到document中.每一个阶段都会有一个钩子函数 ...
- JavaScript中defer的作用
JavaScript中defer的作用 Javascript中defer的作用是文档加载完毕了再执行脚本,这样会避免找不到对象的问题. defer是脚本程序强大功能中的一个"无名英雄&quo ...
最新文章
- Android开发各类常见错误解决方案
- Codeforces-33C. Wonderful Randomized Sum
- Webdynpro ALV component usage
- 蓝桥杯2017年第八届C/C++省赛C组第三题-算式900
- java设计模型 解析工厂模式、proxy-agent模式、templete模式
- 苹果手机越狱后cydia的问题Could not open file - open
- 现代通信技术之交换技术基础
- Android 深入理解AIL语言与init.rc文件
- 与卿共赴鸿蒙是什么意思,『为君倾笑°‖笑红颜』「古风」唯美的古风句子,古风签必备!...
- 程序猿财务自由之路·规划篇
- win8.1配置java环境
- [ArcGIS] Python计算Geometrical interval自然间断点 | jenkspy库
- PDF删除页面技巧介绍
- 民俗多种内涵-农业大健康·万祥军:牛首山谋定世外桃源
- 微端是什么意思?微端对服务器性能配置要求
- 批量将物流信息导出保存在表格中
- ECMAScript简史 和 JavaScript的未来(译)
- 基于GINA/凭证提供程序的自助密码管理
- Lucas–Kanade
- 机器人教父预测AI未来32年!Yann LeCun留言称赞