Показать сообщение отдельно
Старый 04.01.2012, 13:05
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 1  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
По умолчанию 1 обработчик на все кнопки - странное поведение

Жили были 50 красных кнопок. У каждой кнопки name = b1, b2...b50
На каждую из них вешается свой addEventListener(MouseEvent.CLICK, redButton)
Но все они имеют 1 обработчик:

Код AS3:
function redButton(e:MouseEvent):void{
	trace(e.target.parent.name);
}
И всё бы было отлично, но есть один касяк - моя красная кнопка состоит из различных частей (текстового поля, фона, бордюров) некоторые из которых вложены друг в друга:

Код:
кнопка --> фон --> бардюр
     |
      ---> текстовое поле
И когда клик приходиться на фон или текстовое поле, возвращается name кнопки b1, b2 и т.п. Но если клик попадает на бардюр, возвращаеться name фона. Меня такое дело совсем не устраивает.
Мне нужно получить name у кнопка, а не того кишка кнопки, на который пришелся клик.

Вообщем суть в том что нужно сделать 1 адекватный обработчик для всех кнопок.
__________________
Дети не должны знать о своих родителях