所以,我認爲提升會照顧到這一點。我定義一個函數,我試圖從它被定義在同一事件中調用它具體來說,一些示例代碼,不工作:
$(window).load(function() {
doSomething()
var doSomething = function(){
alert('working')
}
})
它扔我大吃一驚,因爲我調用函數全部通過我的代碼,但我只是意識到它們都是從事件處理程序調用的;沒有一個在線運行,除了我決定應該立即運行的那個。
我想我的問題是,爲什麼不是這個函數懸掛,所以我可以在它定義的相同範圍內調用它?
不使用'$ (window).ready(function(){'因爲這已被棄用,使用'$(function(){' –
是的,用戶沒有得到因爲函數表達式。即使他更改爲$(函數)用戶不會得到它。 –
沒有。 document.ready在dom準備就緒時觸發。在加載所有資源後觸發window.load。並改爲您推薦的代碼仍然不能解決我的提升問題。 – user1279629