Javascipt onload Event的研究

来源:互联网 发布:保姆 知乎 编辑:程序博客网 时间:2024/06/05 15:32

最近研究Website性能问题,发现onload event真的很有意思,运行顺序也是不一样的,有时候可能会被覆盖

第1种:Body中的onload

第2种:window.onload

第3种:window.attachEvent

 

 

<html>
<head>
<script type="text/javascript" language="javascript">
window.onload=function()
{
    alert("first run");
}
</script>
</head>
<body onload="alert('third run');">
<script type="text/javascript" language="javascript">
function twofunction()
{
    alert("second run");
}
window.attachEvent('onload',twofunction());
</script>
</body>
</html>

以上代码执行的顺序是 2、3,1没有被执行,因为被3覆盖了

 

要想1也被执行,那么应该改成

<html>
<head>
<script type="text/javascript" language="javascript">
function firstfunction()
{
    alert("first run");
}
window.attachEvent('onload',firstfunction());
</script>
</head>
<body onload="alert('third run');">
<script type="text/javascript" language="javascript">
function twofunction()
{
    alert("second run");
}
window.attachEvent('onload',twofunction());
</script>
</body>
</html>

 

用window.attachEvent才行

 

 

 

原创粉丝点击