簡體   English   中英

奇怪的document.body上的onload事件

[英]onload event on document.body behaving strange

我正在使用firefox 4.0,當我在body元素上使用load事件時,它的行為很奇怪。 我嘗試了一些東西,一些工作,有些沒有。 首先是這樣的

<html>
<head>
<script type="text/javascript">
var load = function(){
alert("body loaded");      //alert not displayed
};
document.body.addEventListener("load",load,false);
</script>
</head>
<body >
</body>
</html>

現在這不起作用現在我嘗試了這個

     html>
    <head>
    <script type="text/javascript">
    var load = function(){
    alert("body loaded");      //alert displayed
    };
    </script>
    </head>
    <body onload="load()">
    </body>
    </html>

這有效,現在我嘗試了

<html>
<head>
<script type="text/javascript">
var load = function(){
alert("body loaded");       //alert not displayed
};
document.body.onload=load;
</script>
</head>
<body >
</body>
</html>

這行不通。 怎么了?

作為對道格D的回應,我嘗試了這個

<html>
<head>
</head>
<body>
<script type="text/javascript">
var load = function(){
alert("body loaded");       //alert not displayed
};
document.body.onload=load;
</script>
</body>
</html>

這不起作用也不起作用

<html>
<head>
</head>
<body>
</body>
<script type="text/javascript">
var load = function(){
alert("body loaded");       //alert not displayed
};
document.body.onload=load;
</script>
</html>

在最后一次嘗試中, body has finished loading而在第二次嘗試中, body is being loaded 但這仍然無法正常工作

在加載之前,無法在頭部訪問body 使用onload屬性的第二種技術是正確的。 或者,我建議將jQuery與

$(document).ready(function()
{
    alert("body loaded");
});

它與跨瀏覽器兼容。 沒有jQuery,您將需要處理IE與其他人之間的DOM事件差異。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM