日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

defer和async属性详解

發布時間:2024/2/28 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 defer和async属性详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

script標簽的加載是同步執行的,也就是說如果將JavaScript文件放在head標簽中時,必須等所有JavaScript代碼下載、解析和解釋完畢后,才能開始渲染頁面 (頁面在解析到body標簽時,開始渲染),這樣的話,當js文件過多時,會導致渲染延遲,瀏覽器空白的情況,因此一般情況我們將js文件放在頁面內容之后。并且提出了延遲執行腳本異步執行腳本,通過給script標簽添加屬性defer或者async來實現。

1.推遲執行腳本_defer

添加了defer屬性的腳本會告訴瀏覽器,立即下載該腳本,但是等整個頁面解析完畢后再運行。HTML5規范要求腳本按照出現順序執行,即如果兩個腳本都設置了defer屬性,那么等頁面解析完畢后,先執行第一個腳本,再執行第二個腳本。但是在實際中,推遲執行的腳本不一定會按照順序執行,因此最好只有一個推遲執行腳本

2.異步執行腳本_async

添加了async屬性的腳本會告訴瀏覽器,立即下載該腳本,且不阻止頁面其他動作,即,不必等到腳本下載和執行完再加載頁面,也不必等該異步腳本下載和執行后再加載其他腳本。因此,如果出現兩個異步腳本,則不能確定它們的執行順序。值得注意的是,異步腳本不應該在加載期間修改DOM

總結

以上是生活随笔為你收集整理的defer和async属性详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。