标签: javascript
我遇到了以下一段代码:
<script src="foo.js" async defer>
我知道<script async...>会下载脚本,然后解析它暂停HTML解析。我也理解<script defer...>将在解析所有HTML后下载脚本并进行解析。
<script async...>
<script defer...>
<script async defer...>做了什么(例如同时使用异步和延迟)?
<script async defer...>
答案 0 :(得分:5)
如果同时指定两者,async优先于现代浏览器,而支持defer但不支持async的旧版浏览器将回退到defer。
async
defer
对于支持表,请检查async和defer的caniuse.com。
caniuse.com
P / s:这些属性仅在页面的head部分使用脚本时才有意义,如果您将脚本放在body页脚中,它们就没用了。
head
body