從我所收集的內容中,前者將賦值語句的實際值賦給onload屬性,而後者賦值實際的函數,並在窗口加載後運行。但我仍然不確定。感謝任何能夠詳細闡述的人。window.onload = init();有什麼不同?和window.onload = init;
回答
window.onload = init();
分配onload事件到什麼是當它執行從初始化函數返回。 init
將立即執行立即(例如,現在,不是當窗口完成加載),結果將被分配到window.onload
。這是不可能的,你會永遠想這樣,但以下是有效的:
function init() {
var world = "World!";
return function() {
alert("Hello " + world);
};
}
window.onload = init();
window.onload = init;
分配onload事件給函數初始化。當onload事件觸發時,init函數將運行。
function init() {
var world = "World!";
alert("Hello " + world);
}
window.onload = init;
什麼時候使用哪個例子? – 2012-01-12 04:29:10
這是有道理的,但我想我的問題是,沒有()和沒有的聲明之間的區別是什麼?因爲兩個窗口完成加載時都會運行。 – Andy 2012-01-12 04:31:44
@安迪 - 有一個重大的區別 - 我詳細闡述了我的回答 – 2012-01-12 04:34:06
window.onload = foo;
分配FOO到窗口對象的onload屬性的值。
window.onload = foo();
分配通過調用FOO()到窗口對象的onload屬性返回的值。這個值是否來自return語句取決於foo,但是它返回一個函數(需要返回語句)是有意義的。
當發生加載事件時,如果window.onload的值是一個函數引用,那麼window的事件處理函數會調用它。
很好的答案,還有一件事補充:
瀏覽器運行時忽略非對象(string, number, true, false, undefined, null, NaN
)設置爲DOM事件,如在window.onload值。因此,如果您寫window.onload
= 10或上述任何價值類型(包括混合string
),則活動將保持null
。
更有趣的事件處理程序將獲得任何對象類型值,即使window.onload = new Date
是一個非常有效的代碼,將在您登錄window.onload
時提示當前日期。 :)但是,當事件觸發時肯定不會發生任何事情。
因此,總是在JavaScript中爲任何事件分配一個函數。
- 1. window.onload = function_name和window.onload = function_name()
- 2. init()和init(_:bool)有什麼區別
- 3. JavaScript window.onload有什麼意義?
- 4. $ window.load和window.onload有什麼區別?
- 5. 想要javascript on window.onload = init;錨定 「#top返回」
- 6. 爲什麼要等待window.onload?
- 7. JavaScript!在window.onload = someFunction和在window.onload = someFunction()
- 8. body onload和window.onload同時
- 9. window.onload = stuff和window.onload = stuff()之間有區別嗎?
- 10. 混淆的window.onload
- 11. function window.onload
- 12. alloc和init做了什麼?
- 13. 在window.onload jQuery中
- 14. 的window.onload不爲WordPress
- 15. window.onload不工作correclty
- 16. submodule add和init有什麼區別?
- 17. 爲什麼UIButton不需要alloc和init?
- 18. 什麼是JSCC.get ... init?
- 19. 使用window.onload函數
- 20. 爲什麼window.onload忽略回傳?
- 21. iOS的 - 爲什麼是init必要和其他的init問題
- 22. IF語句中的不同window.onload事件
- 23. window.onload延遲
- 24. 追加window.onload
- 25. window.onload在Angular中
- 26. Jquery .ready()vs window.onload
- 27. window.onload在IE7
- 28. VS .load的window.onload
- 29. javascript window.onload範圍
- 30. Javascript Window.Onload Function Chaining
是的,這正是差異。 – 2012-01-12 04:20:59
即使你給出了正確的定義,我們也不知道你不清楚什麼。謹慎闡述? – 2012-01-12 04:22:46
那麼我讀的這本書說有明顯的區別,但對我來說,它完成了完全相同的事情。該函數在頁面加載後運行,使用哪一個都有什麼意義? – Andy 2012-01-12 04:26:10