onload执行顺序

今天研究了一下window对象的onload事件执行的顺序,

首先,在页面body里加入

<body><script>alert('body inlined load');</script></body>

然后在head节点里加入

<script type="text/javascript" src="./j.js"></script>


j.js的内容如下:

$(function() {

alert('document init');

$(window).bind('load', function() {

alert('bind load');

});

});


window.onload = function() {

alert('onload');

}


$(function(){

alert('document init2');

$(window).bind('load',function(){

alert('bind load2');

});

});


最终执行的顺序应该是

body inlined load

document init

document init2

onload

bind load

bind load2

可见,直接写在离body最近处的是最先执行的,然后是jquery的ready函数里的代码,再是加载通过window.onload的处理函数内的代码,最后是通过jquery的bind函数绑定的处理代码,如果需要等页面内的全部元素加载好后再执行,可能通过指定window.onload=function(){}或通过jquery.bind绑定,这样是最好不过了!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值