2014-12-30 5 views
0

Ex: Переменная что-то случайный спрайтAS3 - "родитель" из EventListener

something.addEventListener(MouseEvent.CLICK, clickHandler); 

function clickHandler(e:MouseEvent) 
{ 
    //Now I want to remove the eventlistener from something 
} 

Как я могу это сделать в AS3?

ответ

4
something.removeEventListener(MouseEvent.CLICK, clickHandler); 

или если something является локальной переменной или использовать этот обработчик для нескольких спрайтов:

e.currentTarget.removeEventListener(MouseEvent.CLICK, clickHandler); 

docs

+0

В чем разница между e.target и e.currentTarget? –

+1

Ответ на этот вопрос не так прост ... Мне трудно объяснить это в этом комментарии. Я рекомендую вам прочитать эту статью для лучшего понимания «потока событий» - http://www.actionscript.org/resources/articles/860/1/Understanding-the-AS3-Event-Flow/Page1.html. В двух словах: currentTarget будет всегда тем объектом, который вы используете с «addEventListener». Но цель может быть его родителем или ребенком. – Crabar

+0

Я также нашел это http://stackoverflow.com/questions/5921413/difference-between-e-target-and-e-currenttarget –

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