#javascript #addeventlistener
Вопрос:
Я проверил в https://www.caniuse.com но я не думаю, что это подходящее место (из того, что я понял, это больше касается CSS и HTML).
Я в основном слушаю событие «animationend», и я хочу знать идентификатор элемента, который вызвал событие, чтобы скрыть его:
var element = document.getElementById("animconfetti");
element.addEventListener("animationend", listener, false);
function listener(event) {
var id = event.target.id
document.getElementById(id).style.display = 'none'
}
Он работает в МОЕЙ настройке (в основном Firefox), но у меня действительно нет доступа к Safari Mobile, Opera, Safari на macOS, Chrome Mobile, браузеру Samsung… Итак, я хотел бы знать, насколько «безопасна» и «совместима» эта команда.
Спасибо
Комментарии:
1.
event.target
Это будет тот элемент, который вызвал событие , и если он естьid
,event.target.id
он будет существовать. Я бы не знал браузера, в котором этот базовый механизм не работал.2. Для добавления будет доступен не только идентификатор, но и стиль. Так что getElementById вам здесь ничего не делает.
3. @Кит, я не понимаю, что ты имеешь в виду. Код работает. Вы имеете в виду, что я могу сделать что-то вроде event.target.id.style.display=»нет»?
4. НЕТ, я имею в виду, что ты можешь сделать это так
event.target.style.display='none'