script元素屬性

gg464556發表於2017-08-09

 

HTML4.01為<script>元素定義了6個屬性:

分別為async,defer,src,type,language,charset.這6個屬性均為可選屬性,重點理解async和defer用法:

1.aysnc:(非同步指令碼)立即下載指令碼,但不妨礙頁面中其他操作。----------只對外部指令碼有效。在XHTML中應該書寫為async="async"。非同步指令碼一定先於頁面的load事件執行,但可能會在DOMContentLoaded事件觸發前或後執行。

2:defer:(延遲指令碼)表示指令碼可以延遲到遇到</html>標籤時才執行。也就是說指令碼可以被延遲到整個頁面都解析完畢後再執行。設定該屬性後會立即下載指令碼但延遲執行。

-----------只對外部指令碼有效,最好只對一個外部指令碼設定defer屬性。

外部js指令碼區別於嵌入javascript程式碼,其優勢在於:

1.能夠使程式碼更清晰,簡介明瞭,對於某個功能的js程式碼只需找到相應的外部指令碼檔案,便於維護。

2.對於多個頁面相同功能只需使用同一外部js檔案,這樣這個檔案只需下載一次,最終加快頁面載入速度。

通常將css檔案,script檔案的引用都放在<body>標籤中的底部,以便於更快速的將頁面內容顯示在瀏覽器中,優化了使用者體驗效能。

 

相關文章