把两段代码分别测试后发现不带括号的window.onload在页面加载后显示了正确的效果。 我想window.onload也相当于一个触发事件,如果函数加了括号那就直接先执行函数,再加载body。而不加括号,则相当于将一个函数当作jquery $(document).ready() 与window.onload的区别有哪些?
iis7站长之家到window.onload上,并不立即加载。
window.onload事件覆盖掉body onload事件解决方法代码示例1
attachEvent给onload添加所需运行的函数
if (document.all){
window.attachEvent('onload',FuncName)
}
else{
window.addEventListener('load',FuncName,false);
}
或者把两个初始化函数再组成一个新的函数
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事件解决方法代码示例2
<script language="javascript" type="text/javascript">
function srcollnews() {
var scrollup = new ScrollText("listcontent");
scrollup.LineHeight = 60;
scrollup.Amount = 2;
scrollup.Start();
}
if (document.all) {
window.attachEvent('onload', srcollnews)
}
else {
window.addEventListener('load', srcollnews, false);
}
</script>