页面加载完毕执行多个JS函数

Posted Henu丶雨巷

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了页面加载完毕执行多个JS函数相关的知识,希望对你有一定的参考价值。

通常我们需要在打开页面时加载脚本,这些脚本必须在页面加载完毕后才可以执行,因为这时候DOM才完整,可以利用window.onload确保这一点,如:
window.onload=firstFunction;
这脚本的意思是在页面完毕后执行firstFunction函数,但当有很多个函数需要在页面加载时执行呢?可能有人说可以这样:
window.onload=firstFunction;
window.onload=secondFunction;

但这样的话只会执行secondFunction函数。

Simon Willison Blog  上提供了完美的解决方案:

 

[javascript] view plain copy
 
  1. function addLoadEvent(func) {  
  2.   var oldonload = window.onload;  
  3.   if (typeof window.onload != ‘function‘) {  
  4.     window.onload = func;  
  5.   } else {  
  6.     window.onload = function() {  
  7.       if (oldonload) {  
  8.         oldonload();  
  9.       }  
  10.       func();  
  11.     }  
  12.   }  
  13. }  

 

 

func参数就是要加载的函数名(记得只是函数名,不需要括号),有多少个函数需要在页面Load后执行的话,就调用多少次上面那个经典函数,例如:
addLoadEvent(firstFunction);
addLoadEvent(secondFunction);
......

以上是关于页面加载完毕执行多个JS函数的主要内容,如果未能解决你的问题,请参考以下文章

js:说说页面加载完之前那些事(loading多函数加载mounted)

addLoadEvent.js 不管在页面加载完毕执行多少个函数,都应付自如

jQuery 是如何判断HTML页面加载完毕的?它的原理是啥?

如何让页面加载完成后执行js

jQuery如何实现页面加载完毕再去执行代码

Vue 在页面加载结束后执行某个函数