Для удаления обработчика события с DOM-элемента в JavaScript, можно использовать метод removeEventListener(). Этот метод позволяет удалить ранее добавленный обработчик события для определенного события на определенном элементе.

Синтаксис метода removeEventListener() выглядит следующим образом:

element.removeEventListener(event, function, useCapture);

где:

  • element - DOM-элемент, с которого нужно удалить обработчик события.
  • event - тип события, для которого нужно удалить обработчик, например, ‘click’, ‘keydown’, ‘submit’ и т.д.
  • function - функция-обработчик события, которую нужно удалить.
  • useCapture - необязательный параметр, который указывает, был ли обработчик события вызван в фазе перехвата (true) или в фазе всплытия (false, по умолчанию).

Вот пример, который добавляет обработчик события и удаляет его после первого вызова:

const button = document.querySelector("button")
 
function handleClick() {
  console.log("Кнопка нажата")
  button.removeEventListener("click", handleClick)
}
 
button.addEventListener("click", handleClick)

Это добавит функцию-обработчик на кнопку, который будет вызываться при клике на кнопку. При первом клике на кнопку, обработчик события будет вызван, и затем удален с помощью метода removeEventListener(). После этого обработчик события не будет больше вызываться при клике на кнопку.

Важно отметить, что для удаления обработчика события с помощью removeEventListener() нужно передать ту же функцию-обработчик, которая была добавлена с помощью addEventListener(). Если функция-обработчик не была сохранена в переменной, то ее нельзя удалить с помощью removeEventListener().


Назад