![](/img/trans.png)
[英]Javascript code availability for both window.load and document.ready
[英]Can an externally hosted javascript file's code get executed parallel with window.load in a Page
關於window.onload調用,外部托管的javascript文件的執行流程是什么。 假設外部文件中包含以下代碼:
(function() {
console.log('logging1...');
})();
var func1 = function() {
console.log('func1 invoked!');
};
func1();
在觸發window.load之前,
1.)以上代碼的執行流程或輸出是什么?
2.)window.load之后是否有可能執行文件的任何代碼?
3.)與window.load並行,可以執行外部文件代碼。
1.)以上代碼的執行流程或輸出是什么?
通常是:
logging1...
func1 invoked!
這里的函數調用順序沒有任何歧義。 但是請注意, console.log()
尚未標准化,無法立即打印輸出。 如果不按console.log()
函數調用的順序打印給定的參數,它很可能可以同步返回。
2.)window.load之后是否有可能執行文件的任何代碼?
否(當然,除了事件偵聽器,計時器等中的代碼之外)。
加載事件在文檔加載過程結束時觸發。 此時,文檔中的所有對象都在DOM中,並且所有圖像, 腳本 ,鏈接和子框架均已完成加載 。 ( https://developer.mozilla.org/de/docs/Web/API/GlobalEventHandlers/onload )
3.)與window.load並行,可以執行外部文件代碼。
你說並行是什么意思? JavaScript是單線程的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.