您的位置:首页 > Web前端 > JavaScript

js中有window.onload和<BODY>中的onload属性同时存在时

2012-08-20 22:20 489 查看
转自于http://topic.csdn.net/u/20100608/14/aa805ed6-0820-47c7-b866-6dd93d90ea67.html (10楼)

情况一,window.onload指定的function是匿名的,则只执行后者,且动作是后者的动作。如:

<html>
        <head>
        <script type="text/javascript">
        alert('a');
        window.onload=function(){    // 
            alert('b');
        }
        alert('c');
        </script>
        </head>
        <body onload="alert('d');">
        </body>
  </html>


----显示:acd

情况二,window.onload指定的function不是匿名的,则都会执行,前者先于后者。如:

<html> 
<head> 
<script type="text/javascript"> alert('a');
window.onload=fn(); // 后续脚本不执行 function fn(){
 alert('b');
} alert('c');
 </script> 
</head> 

 <body onload="alert('d');">
 </body> 
</html>


----依次显示:abd

window.onload在<BODY>中

情况三,window.onload指定的function是匿名的,则只执行后者,但动作前者是前者的动作。如:

<html>
        <head>
        </head>
        <body onload="alert('a');">
        <script type="text/javascript">
        alert('b');
        window.onload=function (){    
            alert('c');
        }
        alert('d');
        </script>
        </body>
</html>


----依次显示:bdc

情况四,window.onload指定的function不是匿名的,则都会执行,前者优于后者。如:

<html> 
<head> 
</head> 
<body onload="alert('a');"> 
<script type="text/javascript"> alert('b');
window.onload=fn(); // 后续脚本未执行 alert('c'); 
function fn(){ 
alert('d'); 
}
 </script> 
</body> 
</html>


----依次显示:bda
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐