2013-02-14 5 views
5

Я абсолютно не знаком с Javascript. Но я немного узнал об Activescript. Меня учили использовать addEventListener для обработки событий.Javascript: onchange или addEventListener?

Но когда я прихожу к JavaScript, хотя addEventListener - это опция, кажется, это небольшой способ использования addEventListener. Вместо этого люди используют onChange().

За исключением синтаксически, существуют ли поведенческие различия?

Меня также учили всегда использовать removeEventListener. Это кажется не очень необходимым. Если я использую onChange, нет необходимости в коде removeEventListener?

Спасибо

+3

Чтобы узнать о различиях и многое другое, посмотреть на http://www.quirksmode.org/js/introevents.html. –

ответ

2

С addEventListener можно подключить несколько обработчиков событий. Это не относится к атрибуту onchange.

3

Два основных отличия:

  • addEventListener не совместим со старыми браузерами IE
  • OnChange не добавляет слушатель событий: он заменяет существующий один
1

Я лично думаю, что addEventListener намного лучше. Пример вы можете сделать с этим в HTML5

document.addEventListener("input", function(){ 
 
    target = window.event.target.value; 
 
    window.event.target.nextSibling.nextSibling.value = target*2; 
 
});
<input name="1" value="25"> 
 
<input name="2" value="50" readonly> 
 
<p>Hello World</p>

Смежные вопросы