关于JS的--window.onload()方法

一、window.onload()方法:

该方法用于在网页加载完毕后立刻执行的操作,即当html加载完毕后,立刻执行某个方法等。


二、为什么使用window.onload()?

因为JS中的函数方法等需要在HTML文档渲染完成才可以使用,如果没有渲染完成,此时的DOM树是不完整的,这样JS文件就可能报出"undefined"错误


三、常见的用法:

简单的立刻执行函数,假设一个js中只有一个需要页面加载后,立刻执行的函数

那直接调用,不需要加括号

window.οnlοad=Func;


假设一个js中有多个需要页面加载后,立刻执行的函数,那就如下调用即可,需要加括号

window.οnlοad=function(){
	Func1();
	Func2();
	Func3();
	.....
}


但,以上方式也仅仅适用于绑定的函数不是很多的场合



四、window.onload()方法的衍生:

不管你打算在页面加载完毕时执行多少个函数,一百个一千个等,它都可以应付自如,使用一个函数addLoadEvent,它是由Simon Willison(详见 http://simon.incutio.com)编写的,它只有一个参数---需要执行的函数名

function addLoadEvent(func){
	var oldοnlοad=window.onload;
	if(typeof window.onload!='function'){
		window.οnlοad=func;
	}else{
		window.οnlοad=function(){
		oldonload();
		func();
		}
	}
}

上面addLoadEvent函数执行的操作含义是:

1.把现有的window.onload事件处理函数的值存入变量oldonload。

2.如果在这个处理函数上还没有绑定的任何函数,则使用window.οnlοad=func直接调用,不需要加括号

3.如果在这个处理函数上已经绑定了一些函数,就把新的函数追加到现在指令的末尾。


调用该函数时直接将需要执行的函数名称(不需要加括号)当作参数即可,例如:

addLoadEvent(Func1);

addLoadEvent(Func2);

addLoadEvent(Func3);






  • 7
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值