js
<script> 的解析順序的說明:
  • 瀏覽器會按照 <script> 元素在頁面中出現的先后順序,對它們依次進行解析
<script> 存放位置的說明:
  1. 傳統做法,<script> 元素都應該放在頁面的 <head> 元素中。(這種做法的目的是把所有的外部文件引用都放在一起,例如 CSS文件和Javascript文件)
  2. 但是,放在 <head> 元素中,就意味着必須等到全部的javascript代碼都被下載、解析和執行完成以后,才能開始呈現頁面內容。(因為瀏覽器在遇到 <body> 標簽時才開始呈現內容)
  3. 因此,放在 <head> 元素中,容易出現較長時間的空白頁面(因為呈現被阻塞,如果javascript代碼需要很多的話)
  4. 所以,最終 <script> 元素一般都放在 <body> 標簽中頁面內容的后面(也就是 </body> 標簽的前面)

==================================

<script> 幾個記錄:

  • 所有 <script> 元素都會按照它們在頁面中出現的先后順序依次被解析。(在不使用 deferasync 屬性的情況下)
  • defer 屬性,表示延遲解析腳本,即讓腳本在文檔完全呈現后再執行。(延遲腳本總是按照指定它們的順序執行)
  • async 屬性,表示異步解析腳本,即表示當前腳本不必等待其他腳本,也不必阻擋文檔呈現。(區別於 defer,異步腳本不能按照在頁面中的出現的順序執行)
    <script defer="defer" src="...外部腳本路徑"></script>   
    <script async="async" src="...外部腳本路徑"></script>   


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



猜您在找 【web性能】js應該放在html頁面的什么位置 函數直接寫在html頁面的