setTimeout и Объект события
Здравствуйте. Столкнулся с проблемой при работе setTimeout и объектом события.
var handler = function(e) { e.currentTarget; // элемент на котором вызвано событие setTimeout(function(){ e.currentTarget; // null },3000); }; elem.addEventListener("mousedown", handler, false); Как корректно обратиться к объекту события в данном случае? |
LoGao,
сохранить в переменную? |
Спасибо. А почему null в currentTarget? Все остальное вроде передается правильно кроме этого свойства.
|
LoGao,
Вы какой-то фреймворк используете? React например грешит тем что в хендлер кидает синтетические события. Ну, или например ваше вью при перерисовки разрушает дом элемент и вставляет полностью новый дом элемент. Сам себя поправлю. Обычно использую в таких случаях target, а не currentTarget. currentTarget становится null из-за bubble event, т.к. событие всплывает с конкретного элемента до document при этом на каждом элементе во время всплытия меняется currentTarget. В итоге currentTarget на событие становится null. Когда вызывается setTimeout событие уже "всплыло". |
Логично. Спасибо за ответы.
|
Часовой пояс GMT +3, время: 16:08. |