Должен туда так или иначе удалить слушателя события, добавил как это:
element.addEventListener(event, function(){/* do work here */}, false);
Не заменяя элемент?
Невозможно полностью удалить обработчик событий, если вы не сохранили ссылку на обработчик событий при создании.
Обычно я добавляю их к основному объекту на этой странице, после чего вы можете выполнять итерацию и аккуратно избавляться от них, когда закончите с этим объектом.
Назначить обработчики событий с буквальными функциями сложно - их не только невозможно удалить, не клонируя узел и не заменив его клоном - вы также можете непреднамеренно назначить один и тот же обработчик несколько раз, что не может произойти, если вы используете ссылку на обработчик. Две функции всегда рассматриваются как два разных объекта, даже если они идентичны по символам.
Вы можете удалить слушателя событий следующим образом:
element.addEventListener("click", function clicked() {
element.removeEventListener("click", clicked, false);
}, false);