我可以同时使用body onload和window.onload吗?我用下面的代码试过了
<body onload = "alertFirst()">
</body>
<script>
window.onload = alertSec;
</script>但它并没有起作用。我只需要有人向我确认一下。非常感谢
发布于 2012-02-09 22:56:02
如果您要使用的一个或多个脚本在BODY HTML标记中具有事件处理程序,您仍然可以将其移动到javascript代码中。如下例所示:
脚本#1:
<script language="javascript">
function start(){
...code for script #1...
}
</script>
<body onload="start()">脚本#2:
<script language="javascript">
function init(){
...code for script #2...
}
window.onload=init;
</script>结果:
<script language="javascript">
function start(){
...code for script #1...
}
function init(){
...code for script #2...
}
window.onload=function(){
start();
init();
}
</script>
<body>我想它可能会对你有帮助。
发布于 2012-02-09 23:00:20
你的问题的答案是“不”。然而,有一些方法可以绕过它。
将两个调用都添加到一个onload函数是理想的,但是如果你/有/要在已经添加了一个onload处理程序之后添加一个onload处理程序,并且你没有使用促进这一点的框架,你可以这样解决:
<html>
<head>
<script type="text/javascript">
function alertFirst(){
alert('First');
}
function alertSec(){
alert('Second');
}
</script>
</head>
<body onload="alertFirst();">
content
</body>
<script>
var func = document.body.onload;
window.onload=function(){
func();
alertSec();
}
</script>
</html>发布于 2012-02-09 22:53:29
您可以(通过添加事件处理程序),但不应同时拥有两者
相反,将调用添加到window.onload:
<html>
<head>
<script>
window.onload = function() {
alertFirst();
alertSec();
}
</script>
</head>
<body>
</body>https://stackoverflow.com/questions/9212921
复制相似问题