在html中使用window.onload和onload的区别
7个回答
展开全部
在html页面中某段js中调用了window.onload = function test1(){},同时在页面上又有<body onlocad="test2();">语句,
这将会导致window.onload事件覆盖body onload事件,导致body onload事件无效.
解决方法:
第一:attachEven给onload添加所需运行的函数
if(document.all){
window.attachEvent('onload',FuncName)
}else{
window.addEventListener('load',FuncName,false);
}
第二:把两个初始化函数再组成一个新的函数
function init(){}
function myfun(){}
function myinit(){
init();
myfun();
}
window.onload=myinit;
第三:对两个函数进行判断加载方式
function addLoadEvent(func){
var oldonload=window.onload;
if(typeof.window.onload!='function'){
window.onload=func;
}else{
window.onload=function(){
oldonload();
func();
}
}
}
//添加要加载执行的事件:
addLoadEvent(aaa);
addLoadEvent(bbb);
这将会导致window.onload事件覆盖body onload事件,导致body onload事件无效.
解决方法:
第一:attachEven给onload添加所需运行的函数
if(document.all){
window.attachEvent('onload',FuncName)
}else{
window.addEventListener('load',FuncName,false);
}
第二:把两个初始化函数再组成一个新的函数
function init(){}
function myfun(){}
function myinit(){
init();
myfun();
}
window.onload=myinit;
第三:对两个函数进行判断加载方式
function addLoadEvent(func){
var oldonload=window.onload;
if(typeof.window.onload!='function'){
window.onload=func;
}else{
window.onload=function(){
oldonload();
func();
}
}
}
//添加要加载执行的事件:
addLoadEvent(aaa);
addLoadEvent(bbb);
展开全部
前面这些答案 都扯到body上去 题主的问题只是单纯问 这两种写法有没有区别。
很明显 没有任何区别。
直接写onload 和 写window.onload 没有任何区别 因为window是默认的 就好alert() 和 window.alert()没有任何区别 一个道理。 alert()是window.alert()的简写 同样前面不加任何东西直接写onload 其实系统已经帮你默认加了window.了
<script>
window.onload=function(){alert(111);}
</script>
上面这个 和 下面这个 没有任何区别的
<script>
onload=function(){alert(111);}
</script>
很明显 没有任何区别。
直接写onload 和 写window.onload 没有任何区别 因为window是默认的 就好alert() 和 window.alert()没有任何区别 一个道理。 alert()是window.alert()的简写 同样前面不加任何东西直接写onload 其实系统已经帮你默认加了window.了
<script>
window.onload=function(){alert(111);}
</script>
上面这个 和 下面这个 没有任何区别的
<script>
onload=function(){alert(111);}
</script>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一个是页面加载的时候(window.onload);
另一个是页面加载完成(onload);
举个例子:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
function aa(){
alert("onload");
}
window.onload = function(){
alert('window.onload');
}
</script>
</head>
<body onload="aa()">
<div></div>
</body>
</html>
测试一下就知道,window.onload都会比load快,因为在压面加载的过程中就开始执行了
另一个是页面加载完成(onload);
举个例子:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
function aa(){
alert("onload");
}
window.onload = function(){
alert('window.onload');
}
</script>
</head>
<body onload="aa()">
<div></div>
</body>
</html>
测试一下就知道,window.onload都会比load快,因为在压面加载的过程中就开始执行了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在html页面中某段js中调用了window.onload = function test1(){},同时在页面上又有<body onlocad="test2();">语句,
这将会导致window.onload事件覆盖body onload事件,导致body onload事件无效.
解决方法:
第一:attachEven给onload添加所需运行的函数
if(document.all){
window.attachEvent('onload',FuncName)
}else{
window.addEventListener('load',FuncName,false);
}
第二:把两个初始化函数再组成一个新的函数
function init(){}
function myfun(){}
function myinit(){
init();
myfun();
}
window.onload=myinit;
第三:对两个函数进行判断加载方式
function addLoadEvent(func){
var oldonload=window.onload;
if(typeof.window.onload!='function'){
window.onload=func;
}else{
window.onload=function(){
oldonload();
func();
}
}
}
//添加要加载执行的事件:
addLoadEvent(aaa);
addLoadEvent(bbb);
这将会导致window.onload事件覆盖body onload事件,导致body onload事件无效.
解决方法:
第一:attachEven给onload添加所需运行的函数
if(document.all){
window.attachEvent('onload',FuncName)
}else{
window.addEventListener('load',FuncName,false);
}
第二:把两个初始化函数再组成一个新的函数
function init(){}
function myfun(){}
function myinit(){
init();
myfun();
}
window.onload=myinit;
第三:对两个函数进行判断加载方式
function addLoadEvent(func){
var oldonload=window.onload;
if(typeof.window.onload!='function'){
window.onload=func;
}else{
window.onload=function(){
oldonload();
func();
}
}
}
//添加要加载执行的事件:
addLoadEvent(aaa);
addLoadEvent(bbb);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
window.onload是指页面加载时执行的动作
直接使用onload就等于 body.onload 指的是页面加载完成后执行的动作
直接使用onload就等于 body.onload 指的是页面加载完成后执行的动作
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询