当前位置: 首页 > Web前端 > HTML

script标签还需要放在body底部吗?defer-async

时间:2023-04-03 00:39:55 HTML

怎么样,script标签不需要放在body底部!历史背景:以前因为脚本的执行会阻塞dom渲染,所以各种方案引导我们将script标签放在body底部,避免白屏时间过长blabla。你为什么不需要延迟?如果你不学习,你就跟不上。浏览器有新功能。将defer属性添加到脚本。之后所有带有defer的script标签都会正常加载,但是会等到所有的dom元素都执行完布局后,按照所有deferscript标签出现的顺序执行async异步,也就是说script标签异步执行,不会阻塞页面的解析适用场景:defer如果你的脚本代码依赖于页面中的DOM元素(文档是否已经解析),或者被其他脚本文件依赖。示例:评论框代码语法高亮polyfill.jsasync如果你的脚本不关心页面中的DOM元素(文档是否被解析),也不会生成其他脚本需要的数据。例子:如果百度统计不确定,使用defer永远比async稳定。..参考:浅谈script标签中的async和defer