2016-10-22 105 views
1

像嵌入時腳本:「load」事件與異步和/或推遲

<script src="..." async defer></script> 

有沒有辦法知道,當他們完成加載?

通常,當調用window.load事件時,人們會希望所有腳本都準備好。但是我不知道當你用asyncdefer加載它們時它仍然存在。我已經在線閱讀了一些文檔,但在這個問題上找不到任何確鑿的結論。

回答

0

您可以利用onload事件屬性來加載腳本後執行某種回調。

在此示例中,只需在腳本完成加載後提醒用戶。

<script type="text/javascript" src="https://maps.google.com/maps/api/js?sensor=true" async defer onload="alert('resource loaded');"> 
+0

好吧,所以window.onload事件不考慮異步腳本嗎? – Lakshay

+2

window.onload在觸發前等待一切加載,而document.onload在DOM準備就緒時觸發。所以,如果你有異步腳本document.onload將首先執行,而window.onload將等待。所以window.onload會考慮到asyncscripts – Danoram