js動(dòng)態(tài)添加onload、onresize、onscroll事件(另類方法)
更新時(shí)間:2012年12月26日 11:30:36 作者:
window 的 onload、onresize、onscroll 事件,跟其他的事件不一樣,它不能用 attachEvent 或 addEventListener 來(lái)添加于是本人想了一些另類的方法,需要了解的朋友可以參考下
window 的 onload、onresize、onscroll 事件,跟其他的事件不一樣,它不能用 attachEvent 或 addEventListener 來(lái)添加。
也就是說(shuō),它只能這樣來(lái)(以 onload 為例,下同):
window.onload = function()
{
// ...
};
但這有個(gè)問題,就是想再為 onload 增加新的事件處理程序時(shí),不能直接為 window.onload 賦值了,否則前面的賦值就會(huì)被覆蓋了。
可這樣做:
var oldLoadHandler = window.onload;
window.onload = function()
{
if (oldLoadHandler)
{
oldLoadHandler();
}
newLoadHandler();
};
在 ezj 中,就更加方便了。
$(window).ready(onloadHandler1);
$(window).ready(onloadHandler2);
說(shuō)明
我們一般接觸的 onload 事件是 document.body.onload,但這實(shí)際上是由于 IE 的誤導(dǎo),正確的應(yīng)該是 window.onload,window.onload 在 IE、Firefox、Chrome 中均有效。
也就是說(shuō),它只能這樣來(lái)(以 onload 為例,下同):
復(fù)制代碼 代碼如下:
window.onload = function()
{
// ...
};
但這有個(gè)問題,就是想再為 onload 增加新的事件處理程序時(shí),不能直接為 window.onload 賦值了,否則前面的賦值就會(huì)被覆蓋了。
可這樣做:
復(fù)制代碼 代碼如下:
var oldLoadHandler = window.onload;
window.onload = function()
{
if (oldLoadHandler)
{
oldLoadHandler();
}
newLoadHandler();
};
在 ezj 中,就更加方便了。
復(fù)制代碼 代碼如下:
$(window).ready(onloadHandler1);
$(window).ready(onloadHandler2);
說(shuō)明
我們一般接觸的 onload 事件是 document.body.onload,但這實(shí)際上是由于 IE 的誤導(dǎo),正確的應(yīng)該是 window.onload,window.onload 在 IE、Firefox、Chrome 中均有效。
您可能感興趣的文章:
- JS中setTimeout的巧妙用法前端函數(shù)節(jié)流
- 淺談JavaScript函數(shù)節(jié)流
- JavaScript函數(shù)節(jié)流概念與用法實(shí)例詳解
- JavaScript性能優(yōu)化之函數(shù)節(jié)流(throttle)與函數(shù)去抖(debounce)
- js隱藏與顯示回到頂部按鈕及window.onscroll事件應(yīng)用
- JS 滾動(dòng)事件window.onscroll與position:fixed寫兼容IE6的回到頂部組件
- javascript的offset、client、scroll使用方法詳解
- javascript scrollTop正解使用方法
- JS中完美兼容各大瀏覽器的scrolltop方法
- JavaScript觸發(fā)onScroll事件的函數(shù)節(jié)流詳解
相關(guān)文章
javascript實(shí)現(xiàn)點(diǎn)擊后變換按鈕顯示文字的方法
這篇文章主要介紹了javascript實(shí)現(xiàn)點(diǎn)擊后變換按鈕顯示文字的方法,可實(shí)現(xiàn)顯示一些按鈕如果點(diǎn)擊了,按鈕文本變?yōu)椤包c(diǎn)了”,其他按鈕文本變?yōu)椤皼]點(diǎn)”的效果,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-05-05
JS實(shí)現(xiàn)密碼框根據(jù)焦點(diǎn)的獲取與失去控制文字的消失與顯示效果
這篇文章主要介紹了JS實(shí)現(xiàn)密碼框根據(jù)焦點(diǎn)的獲取與失去控制文字的消失與顯示效果,可實(shí)現(xiàn)使用JavaScript判斷密碼框是否獲得焦點(diǎn)來(lái)隱藏與顯示提示文字,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-11-11
利用js查找數(shù)組中指定元素并返回該元素的所有索引示例
在js數(shù)組中查找特定的元素相信對(duì)大家來(lái)說(shuō)再熟悉不過(guò)了,但越簡(jiǎn)單的東西越可能出錯(cuò),小編最近就犯了這樣的錯(cuò)誤,所以想著干脆將實(shí)現(xiàn)的代碼整理下來(lái),方便自己以后需要的時(shí)候,或者有需要的朋友們參考學(xué)習(xí),下面來(lái)一起看看吧。2017-03-03
javascript頁(yè)面渲染速度測(cè)試腳本分享
這篇文章主要介紹了javascript頁(yè)面渲染速度測(cè)試腳本,計(jì)算瀏覽器渲染HTML頁(yè)面所需要的時(shí)間,需要的朋友可以參考下2014-04-04

