window.onload绑定多个事件 —— 两种解决方案
前言
有些函数,必须在网页加载完毕后执行。比如:涉及DOM操作的。
网页加载完毕时会触发一个onload事件,将函数绑定到这个事件上即可。
window.onload = myFunction;
问题来了:如果需要同时绑定多个事件,该如何处理呢?有两种解决方法
方案一
创建一个匿名函数,来容纳需要绑定的多个事件,再讲这个匿名函数绑定到onload事件上
1 window.onload = function(){
2 firstFunction();
3 secondFunction();
4 ......
5 }
方案二
由Simon Willsion编写的addLoadEvent函数:
1 function addEventLoad(func){
2 var oldOnload = window.onload;
3 if(typeof window.onload != 'function'){
4 window.onload = func;
5 }else{
6 window.onload = function(){
7 oldOnload();
8 func();
9 }
10 }
12 }
- 将现有的window.onload事件处理函数的值存入变量oldOnload
- 如果这个处理函数上还没有绑定函数,则和那样把新函数绑定给它。
- 如果已经绑定了函数,则把新的函数追加到指令的末尾。
调用方法:
addEventLoad(firstFuction);
addEventLoad(secondFuction);
如果文章有帮助到您,请点右侧的推荐哈,O(∩_∩)O谢谢~ >>>>