【发布时间】:2012-05-25 04:50:41
【问题描述】:
我即将更新我的代码以使用 addEventListener(),而不是仅在 Javascript 中写入元素属性。
在此之前,我想验证几件事。
-
如果我更新 DOM 并删除元素(
.innerHTML写入),我假设我不必调用removeEventListener()。 -
addEventListener支持流行的现代浏览器 - IE9、Chrome、Firefox、Safari -
现代浏览器不会出现其他问题。
我之所以这么问,是因为我不想急于更新我的代码。
注意事项:
事件关联的属性(去掉 on )。
- onkeypress - 按键
- onblur -> 模糊
- 聚焦 -> 聚焦
研究
https://developer.mozilla.org/en/DOM/element.addEventListener(有兼容性图)
http://www.quirksmode.org/js/events_advanced.html
相关
JavaScript listener, "keypress" doesn't detect backspace?
备注
- 而不是返回假。使用
preventDefault()阻止表单在输入时提交。
【问题讨论】:
-
你的假设是正确的......去吧......顺便说一句,存储当前文件的副本以防万一!
-
好的....如果有任何问题...我会在这里发布。
-
@CS_2013 对于
addEventListener,它是按键。此外,您可能希望使用 jQuery 来制作跨浏览器。如果可能的话,它在后台使用addEventListener,对于旧版IE,它可以回退到attachEvent,并且还可以标准化您的事件对象,因此您不必担心差异。 -
@baz - 我的目标不是 IE9 之前的版本......但是很好的信息。知道...谢谢
标签: javascript dom-events addeventlistener