被引用的外部JS存在window.onload时,判断当前页面是否已存在window.onload,并进行相应处理

时间:2023-03-08 21:52:25
被引用的外部JS存在window.onload时,判断当前页面是否已存在window.onload,并进行相应处理
如果页面a.html引用了b.js,b.js里的方法需要在页面资源加载完成后执行,即在window.onload里执行;
这时如果a.html里使用了window.onload方法,b.js就不能重复调用这个方法了,
因为window.onload不能同时使用多个,否则后者会覆盖前者。
可以用如下方法解决这个问题,即当a.html中已经调用了widow.onload方法,b.js里需要使用widow.onload方法
的函数只需要添加在后面就行了,否则,b.js里新调用一次window.onload就行了。 function addLoadEvent(func) {
var oldonload = window.onload; if (typeof window.onload !== 'function') {
window.onload = func;
} else {
window.onload = function () {
oldonload();
func();
}
}
} addLoadEvent(func);