我可以同時使用body onload和window.onload嗎?我已經使用這個代碼body onload和window.onload同時
<body onload = "alertFirst()">
</body>
<script>
window.onload = alertSec;
</script>
嘗試過,但沒有奏效。我只需要有人向我確認。非常感謝
我可以同時使用body onload和window.onload嗎?我已經使用這個代碼body onload和window.onload同時
<body onload = "alertFirst()">
</body>
<script>
window.onload = alertSec;
</script>
嘗試過,但沒有奏效。我只需要有人向我確認。非常感謝
如果一個或多個的您想要使用的腳本在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>
我想這可能可以幫助你。
您可以(通過添加事件處理程序(S)),但你不應該有兩個
不是呼叫添加到在window.onload:
<html>
<head>
<script>
window.onload = function() {
alertFirst();
alertSec();
}
</script>
</head>
<body>
</body>
您的問題的答案是「否」。然而,它有辦法解決它。
添加兩個電話一個的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 15:07:49
不,document.body.onload
實際上映射到window.onload
。您可以檢查自己 - 當您有<body onload="a()">
和console.log(window.onload)
時,a()
被打印到控制檯中。
你可以做的是有一個onload事件處理函數調用兩個其他函數。
window.onload = function() {
a();
b();
};
或兩個事件偵聽器
window.addEventListener('load', a, false);
window.addEventListener('load', b, false);
是它幫助。謝謝! – 2012-02-09 15:06:57