覆盖body的onresize和onscroll函数

【正文】 与body页面相关的javascript函数,onload当页面加载完毕后触发,onresize当页面的大小改变时触发,onscroll当滚动条滚动时触发,在实际的使用中,不希望在body处添加多个触发函数,所以希望能够使用javascript覆盖,写法如下:

<SCRIPT language=javascript>
<!--
function load_func(){
  window.onresize=func();
  window.onscroll=func();//func()为需要调用的函数
}
//-->
</SCRIPT>

<body onload="load_func()">

这样在body的定义处仅仅使用onload函数调用load_func()然后覆盖body的其他页面事件,在IE中,可以正常使用,但是在Firefox中却没有起到效果,查了很久,以为这个覆盖对于Firefox来讲是不可以实现的,但是偶尔发现一个覆盖代码在FF中可以执行,仔细查看才发现,原来,覆盖的写法不同,比较一下两者的不同:

window.onresize=func();//仅支持IE

window.onresize=func;//支持IE和FF

在Javascript中调用函数一般是以函数名+括号表示,但是这里仅仅用函数名来指向定义的函数,使用加上括号的反而不支持了。具体的原因还不知道,以后在使用的过程中需要注意才行。

 

 

本文来自:Jedliu.cublog.cn

你可能感兴趣的:(scroll)