- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我将更新我的代码以使用 addEventListener()
而不是仅在 Javascript 中写入元素属性。
在我这样做之前,我想验证一些事情。
我假设我不必调用 removeEventListener()
,如果我更新 DOM 并删除元素(通过 .innerHTML
编写) .
addEventListener
受流行的现代浏览器支持 - IE9、Chrome、Firefox、Safari
在现代浏览器上不会出现其他问题。
我问是因为我不想仓促更新我的代码。
注意事项:
属性与事件的相关性(删除 on)。
研究
https://developer.mozilla.org/en/DOM/element.addEventListener (有兼容性图表)
http://www.quirksmode.org/js/events_advanced.html
相关
JavaScript listener, "keypress" doesn't detect backspace?
注意事项
preventDefault()
阻止表单在输入时提交。最佳答案
1) 您不需要为此调用 removeEventListener,但您需要调用 removeEventListener 如果您通过 addEventListener 删除了附加到 eventListener 的 DOM 元素,如果您删除了它的任何子元素你不需要删除任何东西。
2) 所有主流浏览器都支持 addEventListener
3)现代浏览器上没有其他与addEventListener相关的问题
4)onkeypress不是事件名而是属性,事件名是keypress。其他名字也一样* 类似
避免 jQuery 跨浏览器兼容性的快速代码:
Element.prototype.on = function(evt, fn) {
if (this.addEventListener)
this.addEventListener(evt, fn, false);
else if (this.attachEvent)
this.attachEvent('on' + evt, fn);
};
Element.prototype.off = function(evt, fn) {
if (this.removeEventListener)
this.removeEventListener(evt, fn, false);
else if (this.detachEvent)
this.detachEvent('on' + evt, fn);
};
关于javascript - 如何更新到 addEventListener?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10638634/
我是一名优秀的程序员,十分优秀!