内容简介:2.3.(2). defer 与相比普通 script,有两点区别:载入 JavaScript 文件时不阻塞 HTML 的解析,执行阶段被放到HTML标签解析完成之后;
2. <script async src="script.js"></script>
(异步下载)会下载脚本,但是不会立即执行,并且不一定按照script顺序触发;这种方式加载的 JavaScript 依然会阻塞 load 事件。换句话说,async可能在 DOMContentLoaded 触发之前或之后执行,但一定会在 load 触发之前执行。
- (1)HTML5属性;Chorme,FireFox,IE9+浏览器支持
- (2)async属性仅适用于外部脚本
- (3)执行顺序是不确定的
- (4)async 属性表示 异步执行 引入的 JavaScript
- (5)与 defer 的区别在于,如果已经加载好,就会开始执行,无论此刻是 HTML 解析阶段还是 DOMContentLoaded 触发之后
3. <script defer src="script.js"></script>
(延迟执行)是否对脚本执行延迟,直到页面加载为止
(1). 兼容所有浏览器
(2). defer 与相比普通 script,有两点区别:载入 JavaScript 文件时不阻塞 HTML 的解析,执行阶段被放到HTML标签解析完成之后;
(3). 如果脚本不改变文档的内容,可以用defer属性,以便加快处理文档速度
(4).defer 属性表示延迟执行引入的 JavaScript,即这段 JavaScript 加载时HTML 并未停止解析,这两个过程是并行的
(5).defer 不会改变 script 中代码的执行顺序,整个 document 解析完毕且 defer-script 也加载完成之后(这两件事情的顺序无关),会执行所有由 defer-script 加载的JavaScript 代码,然后触发 DOMContentLoaded 事件。
(6)所有设置了defer属性的脚本按顺序执行,async是无顺序的加载
(7)无论设置了defer或async,该script会在onload前执行;
(8)IE/chrome在设置defer时,与firefox不同,前者会等脚本执行后才执行DOMContentLoaded;而后者会先于脚本执行
- script脚本阻塞有什么解决方法?(script异步加载的四种方式)
(1)引入jquery
$(document).ready(function(){
内容
})
复制代码
(2)async属性
(3)defer属性
(4)动态创建 <script>
标签(兼容所有浏览器)
(function(){
var script =document.createElement('script');
script.type='text/javascript';
script.src="http://code.jquery.com/jquery-1.7.2.min.js";
var tmp=document.getElementsByTagName('script')[0],
tem.parentNode.insertBefore(script,tmp);
})
复制代码
- css阻塞有什么解决方法?
css的加载并不会导致html解析和渲染的停止,但是会影响到js脚本的执行。因为js脚本不仅可以读取修改到dom,也可以读取修改到cssom。故在js脚本执前,browser必须保证到css文件完全加载并解析完成,即cssom树完全构建好。这就导致了js执行的延迟,也因此导致html解析和渲染延迟。(这就是css阻塞js执行,阻塞渲染的根本原因)
因此一些解决方法:
- 1、在引入顺序上,css资源的引入要优于js脚本的引入
- 2、对css进行精简并尽快提供
- 3、可以用媒体类型(会加载不会阻塞)
- 4、用媒体查询(会记载,只有在符合的设备上才会进行阻塞)
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- Node.js 指南(阻塞与非阻塞概述)
- Node.js 回调函数 阻塞与非阻塞
- 明明白白学 同步、异步、阻塞与非阻塞
- 从 Linux 源码看 socket 的阻塞和非阻塞
- 分布式系统关注点——阻塞与非阻塞有什么区别?
- Netty基础系列(2) --彻底理解阻塞非阻塞与同步异步的区别
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
The Mechanics of Web Handling
David R. Roisum
This unique book covers many aspects of web handling for manufacturing, converting, and printing. The book is applicable to any web including paper, film, foil, nonwovens, and textiles. The Mech......一起来看看 《The Mechanics of Web Handling》 这本书的介绍吧!