javascript 添加和移除函數(shù)的通用方法
更新時(shí)間:2009年10月20日 15:41:37 作者:
javascript 添加和移除函數(shù)的通用方法, 需要的朋友可以參考下。
//添加函數(shù)的方法
function addEvent( node, type, listener) {
if( node.addEventListener ){
// W3C方法(DOM方法)
//下面語(yǔ)句中的false意思是用于冒泡階段,若是true則是用于捕獲階段(IE不支持捕獲),所以這里用false是一方面的原因是為了統(tǒng)一
node.addEventListener( type, listener, false );
return true;
} else if( node.attachEvent ){
// MSIE方法(IE方法)
node['e' + type + listener] = listener;
node[type + listener] = function (){
node['e' + type + listener](window.event);
};
node.attachEvent('on' + type, node[type + listener]);
return true;
}
//如兩種方法都不具備則返回false
return false;
}
//移除函數(shù)的方法
function removeEvent( node, type, listener) {
if( node.addEventListener ){
node.removeEventListener( type, listener, false );
return true;
} else if( node.detachEvent) {
node.detachEvent('on' + type, listener);
return true;
}
//如兩種方法都不具備則返回false
return false;
}
//添加載入事件的方法如下所示
1.function addLoadEvent(func){
var oldonload=window.onload;
if(typeof window.onload!="function"){
window.onload=func;
}else{
window.onload=function(){
oldonload();
func();
}
}
}
2.//用上面的addEvent方法
addEvent(window, 'load', fn);
function addEvent( node, type, listener) {
if( node.addEventListener ){
// W3C方法(DOM方法)
//下面語(yǔ)句中的false意思是用于冒泡階段,若是true則是用于捕獲階段(IE不支持捕獲),所以這里用false是一方面的原因是為了統(tǒng)一
node.addEventListener( type, listener, false );
return true;
} else if( node.attachEvent ){
// MSIE方法(IE方法)
node['e' + type + listener] = listener;
node[type + listener] = function (){
node['e' + type + listener](window.event);
};
node.attachEvent('on' + type, node[type + listener]);
return true;
}
//如兩種方法都不具備則返回false
return false;
}
//移除函數(shù)的方法
function removeEvent( node, type, listener) {
if( node.addEventListener ){
node.removeEventListener( type, listener, false );
return true;
} else if( node.detachEvent) {
node.detachEvent('on' + type, listener);
return true;
}
//如兩種方法都不具備則返回false
return false;
}
//添加載入事件的方法如下所示
1.function addLoadEvent(func){
var oldonload=window.onload;
if(typeof window.onload!="function"){
window.onload=func;
}else{
window.onload=function(){
oldonload();
func();
}
}
}
2.//用上面的addEvent方法
addEvent(window, 'load', fn);
相關(guān)文章
微信小程序?qū)崿F(xiàn)九宮格翻牌動(dòng)畫
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)九宮格翻牌動(dòng)畫,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04
JS實(shí)現(xiàn)簡(jiǎn)單短信驗(yàn)證碼界面
要實(shí)現(xiàn)短信驗(yàn)證碼界面,首先要有一個(gè)文本框,旁邊是按鈕,點(diǎn)擊時(shí)開始倒計(jì)時(shí)。接下來(lái)通過(guò)本文給大家分享js實(shí)現(xiàn)簡(jiǎn)單短信驗(yàn)證碼界面,感興趣的朋友參考下吧2017-08-08
Javascript中正則表達(dá)式的應(yīng)用詳解
這篇文章主要為大家詳細(xì)介紹了Javascript中正則表達(dá)式的應(yīng)用,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助2022-02-02
Chrome插件開發(fā)系列一:彈窗終結(jié)者開發(fā)實(shí)戰(zhàn)
從這一節(jié)開始,我們將從零開始打造我們的chrome插件工具庫(kù),第一節(jié)我們將講一下插件開發(fā)的基礎(chǔ)知識(shí)并構(gòu)建一個(gè)簡(jiǎn)單但卻很實(shí)用的插件,在構(gòu)建之前,我們先簡(jiǎn)單的了解一下插件以及插件開發(fā)的基礎(chǔ)知識(shí)2020-10-10
在javascript中實(shí)現(xiàn)函數(shù)數(shù)組的方法
js不進(jìn)行類型檢查,數(shù)組可以存放任何東西。于是我就想數(shù)組里可否存放函數(shù)呢,下面就為大家詳細(xì)介紹下2013-12-12
JS實(shí)現(xiàn)jQuery的append功能
jQuery中可以直接使用$el.append()為元素添加字符串型dom, 但是最近轉(zhuǎn)戰(zhàn)Vue, 再使用jQuery明顯不合適了, 所以通過(guò)查找資料, 封裝一個(gè)可以實(shí)現(xiàn)同樣效果的方法.2021-05-05
JS實(shí)現(xiàn)橫向與豎向兩個(gè)選項(xiàng)卡Tab聯(lián)動(dòng)的方法
這篇文章主要介紹了JS實(shí)現(xiàn)橫向與豎向兩個(gè)選項(xiàng)卡Tab聯(lián)動(dòng)的方法,涉及JavaScript遍歷及動(dòng)態(tài)修改頁(yè)面元素屬性的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-09-09
BootStrap table刪除指定行的注意事項(xiàng)(筆記整理)
在前端開發(fā)中遇到這樣的問題,對(duì)于table指定行的數(shù)據(jù)進(jìn)行刪除,花了好長(zhǎng)時(shí)間才解決,今天小編抽時(shí)間給大家介紹BootStrap table刪除指定行的注意事項(xiàng),需要的朋友參考下吧2017-02-02

