[英]IE9 F12 Developer Tools - What's the difference between “Load(event)” and “page has finished loading”?
我試圖了解Internet Explorer 9的F12開發人員工具網絡選項卡的一些輸出。
在http://blogs.microsoft.co.il/linqed/2010/10/06/network-traffic-capturing-with-ie9-developer-tools/
Microsoft將“Gap”定義為“請求完成與整個頁面加載完成之間的時間間隔”,但在上面的示例中,您可以看到Gap延伸到“Load(event)”之后。
那么,在“加載(事件)”和“整個頁面已完成加載”之間的瀏覽器中可能會發生什么。 它只是在onloadevent中注冊的Javascript代碼嗎? 或者其他事情會發生嗎?
只要加載並解析了HTML頁面(及其腳本),就會觸發DOMContentLoaded
事件。
外部樣式表和圖像之類的東西是異步請求的,因此所有這些請求都需要更長的時間才能返回。 當他們回來時,會觸發load
事件。 此事件是IE9調用Load(event)
。
這里有一個很好的例子。
似乎在onLoad事件之后觸發的任何Ajax請求都會導致Gap超出Load(事件)
我的困惑之所以產生,是因為我收到了在頁面加載后X秒觸發的Ajax請求,所以當我查看網絡選項卡時,我是否看到了額外的請求/ Gap延伸超過Load(事件)。
例如,請參閱此處的摘要視圖,其中最后一個請求是red-line / Load(event)之后的Ajax請求。
這在詳細視圖中顯示為
我還認為微軟的措辭是錯誤的。 你不能說只有在Ajax請求之后頁面才准備就緒。 對於許多頁面,一旦onLoad事件發生並且Ajax將引入更新,它們就會准備就緒。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.