❶ js 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,各取所好吧!
❷ JS中document对象和window对象有什么区别么
一、指代不同
1、document对象:代表给定浏览器窗口中的 HTML 文档。
2、window对象:表示浏览器中打开的窗口。
二、作用不同
1、document对象:使用 document 对象可以对 HTML 文档进行检查、修改或添加内容,并处理该文档内部的事件。
2、window对象:浏览器会为 HTML 文档创建一个 window 对象,并为每个框架创建一个额外的 window 对象。
三、使用方式不同
1、document对象:在 Web 页面上,document 对象可通过 window 对象的 document 属性引用,或者直接引用。
2、window对象:没有应用于 window 对象的公开标准,不过所有浏览器都支持该对象。
❸ js中windows的两种打开方式
第一种: windows.open();
第二种: window.top.frames['框架名'].document.location.href='about:blank';
❹ 请教一个js问题,关于window打开新窗口,并关闭新窗口。
第二句window.open('','_self')导致的页面刷新。
应该你把function close()这个函数删掉就解决问题了。有用请采纳。
你即便不定义这个函数onclick="close()"也能关闭窗口,如果关不了就用onclick="window.close()"
❺ js的 window.load 和window.onload 有什么区别
JavaScript 中的以下代码 :
Window.onload = function (){// 代码 }
等价于
Jquery 代码如下:
$(window).load(function (){// 代码 });
执行时机
window.load——必须等待网页中所有的内容加载完毕后 ( 包括图片 ) 才能执行
$(document).ready()——网页中所有 DOM 结构绘制完毕后就执行,可以能 DOM 元素关联的内容并没有加载完
编写个数
window.load——不能同时编写多个以下代码无法正确执行:
window.onload = function(){ alert(“text1”);};window.onload = function(){ alert(“text2”);};结果只输出第二个
$(document).ready()——能同时编写多个以下代码正确执行:
$(document).ready(function(){ alert(“Hello World”);});$(document).ready(function(){ alert(“Hello again”);});
结果两次都输出
以 浏览器装载文档为例,在页面加载完毕后,浏览器会通过 Javascript 为 DOM 元素添加事件。在常规的 Javascript 代码中,通常使用 window.onload 方法,而在 Jquery 中,使用的是$(document).ready() 方法。 $(document).ready() 方法是事件模块中最重要一个函数,可以极大的提高Web 应用程序的速度。
另外,需要注意一点,由于在 $(document).ready() 方法内注册的事件,只要 DOM 就绪就会被执行,因此可能此时元素的关联文件未下载完。
例如与图片有关的 html 下载完毕,并且已经解析为 DOM 树了,但很有可能图片还没有加载完毕,所以例如图片的高度和宽度这样的属性此时不一定有效。要解决这个问题,可以使用 Jquery 中另一个关于页面加载的方法 ---load() 方法。
Load() 方法会在元素的onload 事件中绑定一个处理函数。
如果处理函数绑定给 window 对象,则会在所有内容 ( 包括窗口、框架、对象和图像等 ) 加载完毕后触发,如果处理函数绑定在元素上,则会在元素的内容加载完毕后触发。
总结:
js:window.onload页面一运行就执行该函数,执行该函数时,可能页面中的图片还没有加载完成!
jquery: $(window).load()页面中的图片或其它东西加载完成之后,执行该函数。