为什么自执行匿名函数无法访问 DOM 元素。为什么这样的例子不起作用。
(function() {
alert(document.getElementById('someElement'));
)();
为什么警报会显示“null”?
为什么自执行匿名函数无法访问 DOM 元素。为什么这样的例子不起作用。
(function() {
alert(document.getElementById('someElement'));
)();
为什么警报会显示“null”?
只需在 DOM 加载时执行它。您也可以使用脚本延迟属性。
(function() {
window.addEventListener("load", function() {
alert(document.getElementById('someElement'));
}, false);
})();
你错过了你的大括号}
。
它应该是
(function() {
alert(document.getElementById('someElement'));
})();
这将立即执行,因此需要将其放置在适当的位置以确保 DOM 已加载。确保这个脚本在你的 HTML 文件的末尾加载,或者像 Georgi Naumov 建议的那样包括一个检查,向 window.load 事件添加一个监听器将做同样的事情。