Event.currentTarget

Перевод не завершен. Пожалуйста, помогите перевести эту статью с английского.

Определяет элемент, в котором в данный момент обрабатывается событие, при движении события внутри DOM. Всегда совпадает с текущим элементом, в отличие от свойства event.target, идентифицируещее элемент, на котором событие возникло.

Пример

event.currentTarget используется, когда один и тот же обработчик события присваивается нескольким элементам.

function hide(e){
  e.currentTarget.style.visibility = "hidden";
  // Когда данная функция используется в качестве обработчика события: this === e.currentTarget
}

var ps = document.getElementsByTagName('p');

for(var i = 0; i < ps.length; i++){
  ps[i].addEventListener('click', hide, false);
}

// click around and make paragraphs disappear

Спецификации

Спецификация Статус Комментарии
Document Object Model (DOM) Level 2 Events Specification
Определение 'Event.currentTarget' в этой спецификации.
Рекомендация
Изначальное определение. 

Совместимость с браузерами

Возможность Chrome Firefox (Gecko) Internet Explorer Opera Safari
Базовая поддержка (Да) (Да) (Да)[1] (Да) ?
Возможность Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Базовая поддержка ? ? ? ? ?

[1] В Internet Explorer с 6 по 8, событийная модель иная. Слушатели событий привяззываются к нестандартному методу element.attachEvent. В данной модели не существует эквивалента event.currentTarget и this - это глобальный объект. Единственный способ имитировать свойство event.currentTarget - обернуть ваш обработчик в функцию, вызывающую обработчик с использованием Function.prototype.call с элементом в качестве первого аргумента. Данным способом this примет ожидаемое значение.

См.также

Comparison of Event Targets

Метки документа и участники

 Внесли вклад в эту страницу: kaorub
 Обновлялась последний раз: kaorub,