在我的文档中,我在此示例中给出了一个 onLoad 函数:
<body onLoad="display()">
此外,我在文档末尾添加了一个函数,它改变了一些 CSS 属性:
<script>
window.onload = foo(), bar();
</script>
不知何故,整个事情都不起作用!我试图在文档末尾添加所有功能,但我不明白,不知何故它们不会触发!
在我的文档中,我在此示例中给出了一个 onLoad 函数:
<body onLoad="display()">
此外,我在文档末尾添加了一个函数,它改变了一些 CSS 属性:
<script>
window.onload = foo(), bar();
</script>
不知何故,整个事情都不起作用!我试图在文档末尾添加所有功能,但我不明白,不知何故它们不会触发!
在第一种情况下,我看不出它不应该工作的原因,只要display()
定义的函数没有错误。
在第二种情况下,当通过 DOM 分配事件处理程序时,您需要传递函数引用(即,而不是foo()
just foo
)或将其包装在匿名函数中,如下所示:
window.onload = function() {
foo();
}
这将调用函数,但它不会分配任何有用的东西,window.onload
除非你的最后一个函数恰好返回一个函数。
您需要分配一个函数,该函数将在准备好window.onload
时调用您的函数。window
window.onload = function() {
foo();
bar();
};
另外,由于您将脚本放在底部,因此您可能不需要window.onload
.
<script>
foo(); bar();
</script>
</body>
您还应该知道,直接分配给window.onload
将覆盖在 中分配的脚本<body onLoad=...>
,因此您不应该两者都做。目前, 的返回值bar();
正在清除调用 的函数display();
。
摆脱window.onload
分配将解决这个问题。