首頁 >web前端 >js教程 >js的延遲執行問題分析_javascript技巧

js的延遲執行問題分析_javascript技巧

WBOY
WBOY原創
2016-05-16 16:43:341484瀏覽

看這段程式碼:

<body>
  <script src="deffer.js"></script>
  content
 </body>

deffer.js的內容為:

alert(1)

這樣在alert視窗沒有被關閉之前,頁面都會是一片空白。因為alert視窗阻止了頁面的繼續渲染。

為了避免這類問題,html規格裡定義了deffer和async屬性,這兩個屬性的具體定義這裡不討論,反正他們都是用來告訴瀏覽器,一定要在頁面渲染完成以後再執行本腳本的內容,這樣腳本執行的時候頁面已經渲染完畢了。

<body>
  <script deffer async src="deffer.js"></script>
  content
 </body>

注意,對於多個加了deffer或async的腳本,他們的執行順序和他們在頁面上出現的順序無關。即使html規範定義了deffer腳本應該按照順序來執行,但是瀏覽器事實上並沒有全部遵守這個約定。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn