script标签不带属性与带async、defer的区别

<script>
当页面解析到script标签时,会停止解析并下载对应的脚本,并马上执行,执行完毕后再继续解析页面


<script async>
async 在下载脚本的同时不会停止解析HTML,但是在下载完成后会停止解析并开始执行,执行完毕后继续解析页面


<script defer>
defer 下载脚本时跟async一样不会停止解析HTML,下载完毕后会延迟到页面解析完后执行


async跟defer都只对外部脚本有效,IE7及更早的版本对嵌入脚本也支持defer;

另外,HTML5规范中,defer要按照顺序执行,但实际上defer跟async都不一定会按照顺序执行




参考:http://www.growingwiththeweb.com/2014/02/async-vs-defer-attributes.html
posted @ 2016-07-13 11:41  出陈铖  阅读(131)  评论(0编辑  收藏  举报