【发布时间】:2014-04-27 13:09:44
【问题描述】:
以下代码 sn-ps 都有效:
在js文件中使用IIFE:
(function initialize() {
txtInput = document.getElementById('txtInput');
txtResult = document.getElementById('txtResult');
txtInput.value = "0";
txtResult.value = "0";
}());
在 html 文件中的窗口加载事件中调用 initialize():
window.addEventListener('load', initialize, false);
一种比另一种更好的方法吗?在性能或其他方面?就目前而言,我更倾向于向窗口对象添加事件监听器,因为它更具可读性。
【问题讨论】:
-
是 window.addEventListener('load', initialize, false); -> 将在加载的 dom 内容上执行。
-
并非如此,它会在所有资源加载完毕后调用初始化,使用 3rd 方的东西差异可能很大。
-
这完全取决于您是否打算在实际添加元素之前或之后运行它。如果您确定它们存在 - 使用 IIFE。
-
@LShetty 哎呀,修正了错字。
标签: javascript dom-events iife