将元素动态添加和删除事件的js实现方法

在最近的项目中,我们需要动态地将元素绑定到JS,它以前没有使用过。通过学习它,写了两事件。一个是添加事件,另一个是删除事件。


/ addEventListener(),removeEventListener()是用来处理,删除指定事件处理程序的运行
作用域:事件处理程序将运行在其各自元素内的范围内。
/ / addEventListener(事件、功能、捕获/泡沫);removeEventListener(事件、功能、捕获/泡沫)
正如上面表中所示的事件参数,函数是一个要执行的函数,捕获和冒泡是由两种时间模式组成的W3C,
捕获是从文件 /简单地开始读取最后一行,然后执行事件,而冒泡是第一个找到指定的位置,然后执行事件。
捕获/冒泡的参数是布尔的,真的是捕获,false是气泡。


函数AddEvent(){

var obj = document.getelementbyid(txtiatacity );

如果(窗口。addEventListener){

代码其他浏览器:Mozilla、Netscape、Firefox事件

事件的顺序添加 / / / / / /添加的顺序执行的事件注册侦听器,不

Obj.addEventListener('focus',函数(){测试(AA)},假);

}

{其他

IE的事件代码将添加方法添加到原始事件中。

obj.attachevent('onfocus,函数(){测试(AA)});

}

}



功能removeevnent(){

var obj = document.getelementbyid(txtiatacity );

如果(窗口。removeEventListener){

Obj.removeEventListener('focus',函数(){测试(AA)},假);

}

{其他

obj.detachevent('onfocus,函数(){测试(AA)});

}

}



加载页面时,将上述方法调用到输入绑定事件,并成功添加测试,但删除总是失败的。


通过addEventListener() / /添加事件只有通过removeEventListener()删除。是啊有下面的句子:(addEventListener) / /删除匿名函数将不会被添加到排除发现问题(功能){测试(AA)} / /无效,因为传入的addEventListener()和removeEventListener()方法是不一样的方法和测试('AA)在功能测试中提出(MSG){ alert(MSG)功能(AddEvent)} { var obj = document.getelementbyid改写(txtiatacity );

如果(窗口。addEventListener){

代码其他浏览器:Mozilla、Netscape、Firefox事件

事件的顺序添加 / / / / / /添加的顺序执行的事件注册侦听器,不

Obj.addEventListener('focus',测试('msg)},假);

}

{其他

IE的事件代码将添加方法添加到原始事件中。

obj.attachevent('onfocus测试('msg)});

}

}



功能removeevnent(){

var obj = document.getelementbyid(txtiatacity );

如果(窗口。removeEventListener){

Obj.removeEventListener('focus',测试('msg)},假);

}

{其他

obj.detachevent('onfocus测试('msg '));

}

}


所以IE提示被执行:类型不匹配看起来像一个不支持参数的函数,然后将函数封装成非参数形式。

执行,添加,删除或失败。在互联网上半天,几乎所有的都是成功的。我不知道为什么我不能删除它。

后来,我看了一个引用jQuery页面然后成功的jQuery绑定和取消绑定事件。

嗯,项目完成后,问题就解决了。

上面的js动态添加和删除事件的元素,这是所有萧边分享你的内容。我希望能给你一个参考,希望你能支持它。