一旦脚本加载完成,则会立即执行:
<script src="demo_async.js" async></script>
浏览器支持
Internet Explorer 10、Firefox、Opera、Chrome 和 Safari 支持 async 属性。
注意:Internet Explorer 9 及之前的版本不支持 <script> 标签的 async 属性。
定义和用法
async 属性是一个布尔属性。
async 属性可以用于控制脚本的异步加载,并在加载完成后立即执行(异步加载,同步执行)。
当 <script> 标签设置了 async 属性时,浏览器会异步地加载脚本文件,并且在下载完成后立即执行脚本,而不会等待页面的渲染。这样可以避免脚本的下载和执行对页面渲染的阻塞,从而提高页面的加载速度。
注意:由于 async 属性的设置会使得脚本的执行顺序不再保证,因此在编写代码时需要注意脚本之间的依赖关系。如果多个脚本之间有依赖关系,需要使用 defer 属性或者手动管理加载顺序来确保脚本的正确执行顺序。
注意:async 属性仅适用于外部脚本(只有在使用 src 属性时)。
注意:有多种执行外部脚本的方法:
- 如果 async="async":脚本相对于页面的其余部分异步地执行的(当页面继续进行解析时,脚本将被执行)
- 如果不使用 async 且 defer="defer":脚本将在页面完成解析时执行
- 如果既不使用 async 也不使用 defer:在浏览器继续解析页面之前,立即读取并执行脚本
HTML 4.01 与 HTML5之间的差异
async 属性是 HTML5 中的新属性。
HTML 与 XHTML 之间的差异
在 XHTML 中,禁止属性最小化,async 属性必须定义为 <script async="async">。
语法
<script async>