Почему неверно работает обработчик JS?

В JS не силен, почитал гайд по обработчикам события и написал код:
var audio = document.getElementById("musicPlayer");
audio.addEventListener('ended', function () {
	nextPlayMusic();
})

При нажатии паузы чищу эвент:
var audio = document.getElementById("musicPlayer");
audio.removeEventListener("ended", function() {});

Но через какое то время стояния на паузе, срабатывает nextPlayMusic(); из эвента...
Что я делаю не так?
  • Вопрос задан
  • 121 просмотр
Решения вопроса 1
@its2easyy
Удалять нужно ту же функцию которая добавлялась, а анонимная функция каждый раз создаётся новая, поэтому
audio.addEventListener('ended', nextPlayMusic);
audio.removeEventListener('ended', nextPlayMusic);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы