当前位置: 首页 > 图文教程 > 网络编程 > Javascript > js window.onload 加载多个函数的方法

Javascript
JQuery 学习笔记 选择器之四
JQuery 学习笔记 选择器之五
JQuery 学习笔记 选择器之六
JQuery CSS样式控制 学习笔记
用js模仿word格式刷功能实现代码 [推荐]
运用jquery实现table单双行不同显示并能单行选中
jqPlot jquery的页面图表绘制工具
jquery tools之tabs 选项卡/页签
jquery tools之tooltip
浅析Javascript原型继承 推荐
JQuery UI皮肤定制
实现lightBox时的样式与行为分离减少JS
JQuery 表格操作(交替显示、拖动表格行、选择行等)
javascript 进度条 实现代码
Javascript this指针
jquery imgareaselect 使用利用js与程序结合实现图片剪切
javascript 写的一个简单的timer
javascript 处理HTML元素必须避免使用的一种方法
Javascript 验证上传图片大小[客户端]
jQuery 隔行换色 支持键盘上下键,按Enter选定值

Javascript 中的 js window.onload 加载多个函数的方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 469 ::
收藏到网摘: n/a

平时做项目 经常需要使用window.onload,但window.onload 不能同时加载多个函数。 用法如下:
function func(){alert("this is window onload event!");return;}
window.onload=func;
或者如下:
window.onload=function(){alert("this is window onload event!");return;}
但window.onload 不能同时加载多个函数。
比如:
复制代码 代码如下:

function t(){
alert("t")
}
function b(){
alert("b")
}
window.onload =t ;
window.onload =b ;

后面会把前面的覆盖,上面代码只会输出 b。
此时可用如下方法解决:
window.onload =function() { t(); b(); }
另一种解决方法如下:
复制代码 代码如下:

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

使用如下:
复制代码 代码如下:

function t(){
alert("t")
}
function b(){
alert("b")
}
function c(){
alert("c")
}
function addLoadEvent(func) {
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
window.onload = function() {
oldonload();
func();
}
}
}
addLoadEvent(t);
addLoadEvent(b);
addLoadEvent(c);
//等价于 window.onload =function() { t(); b(); c() ;}

个人以为直接使用隐式函数(如:window.onload =function() { t(); b(); c() ;})更快捷,当然使用 addLoadEvent 更professional,各取所好吧!