Javascript:onchange还是addEventListener?

时间:2013-02-14 20:01:32

标签: javascript onchange addeventlistener

我对Javascript完全不熟悉。但我之前学到了一些关于Activescript的知识。我被教导使用addEventListener来处理事件。

但是当我来到JavaScript时,尽管addEventListener是一个选项,但它似乎是使用addEventListener的一种小方法。相反,人们使用onChange()。

除语法上外,是否存在任何行为差异?

我还被教导要始终使用removeEventListener。这似乎不是很必要。如果我使用onChange,则无需编写removeEventListener?

谢谢

4 个答案:

答案 0 :(得分:5)

两个主要区别:

  • addEventListener与旧的IE浏览器不兼容
  • onchange不会添加事件侦听器:它会替换现有的

答案 1 :(得分:3)

使用addEventListener,您可以附加多个事件侦听器。 onchange属性不适用。

答案 2 :(得分:1)

我个人认为addEventListener好多了。您可以在HTML5中使用此示例执行此操作

ng-model="option.name1"
ng-model="option.age1"
ng-submit="send2(option);
document.addEventListener("input", function(){
  target = window.event.target.value;
  window.event.target.nextSibling.nextSibling.value = target*2;
});

答案 3 :(得分:0)

大家都说的是真的,但是当“通过代码”进行更改时,似乎只有onchange才能捕获更改。