标签:load 多个 调用 func 问题 fun cti ade 解决
如果页面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);
被引用的外部JS存在window.onload时,判断当前页面是否已存在window.onload,并进行相应处理
标签:load 多个 调用 func 问题 fun cti ade 解决
原文地址:https://www.cnblogs.com/Man-Dream-Necessary/p/8780268.html