2012-07-19 3 views
-3

Можно создать дубликат:
JavaScript: remove event listenerRemove добавил слушатель события

Я добавляю некоторые слушателя в моем HTML-страницу с помощью следующей JavaScript. Но мне нужно удалить слушателя, как только этот элемент будет нажат. Любая идея по этому поводу была бы весьма признательна.

Вот код JavaScript для слушателя,

document.addEventListener('mousemove',function(e){ 
    var elem = e.target || e.srcElement; 
    if (prevElement!= null) {prevElement.classList.remove("className");} 
    elem.classList.add("className"); 
    prevElement = elem; 
},true); 
+0

Если вы сделали [некоторые искания] (http://google.com/?q=javascript+removeeventlistener) вы получите достаточно информации: https: // разработчик. mozilla.org/en/DOM/element.removeEventListener –

+0

Вот аналогичный вопрос с ответом: http://stackoverflow.com/questions/4402287/javascript-remove-event-listener – Elchin

ответ

2

Вы должны использовать указанную функцию. Вы можете просто использовать removeEventListener, чтобы удалить его:

function mouseMoveCallback(e) { 
    // Put your code here... 
} 

function clickCallback(e) { 
    document.removeEventListener('mousemove', mouseMoveCallback, true); 
    document.removeEventListener('click', clickCallback, true); 
} 

document.addEventListener('mousemove', mouseMoveCallback, true); 
document.addEventListener('click', clickCallback, true); 
+0

Он хочет удалить его, как только произойдет щелчок , в противном случае объявление отдельной функции не понадобилось. – Esailija

+1

@ Эсалия - я этого не осознавал. Благодарю. Обновлено. –

Смежные вопросы