Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 26.02.2013, 21:44
olejan1991 вне форума Посмотреть профиль Отправить личное сообщение для olejan1991 Найти все сообщения от olejan1991
  № 1  
Ответить с цитированием
olejan1991

Регистрация: Jul 2012
Сообщений: 112
По умолчанию что такое currentTarget?

Просмотрел множество сайтов и, кажется, понял, но вот для закрепления решил спросить на примере такой ситуации, так сказать на пальцах: есть прямоугольник и в нем объект, получается при получении события этим объектом currentTarget - это ссылка на этот прямоугольник, а target - это ссылка на объект?

Старый 26.02.2013, 21:51
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 2  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
currentTarget это объект на котором был зарегистрирован слушатель. Так что если слушатель был добавлен именно к этому прямоугольнику, то currentTarget будет ссылкой на этот прямоугольник, а уже от него событие может всплывать дальше по иерархии, и там уже ловятся target'ы

А для не дисплей объектов target и currentTarget всегда совпадают

Вообще, у Колина Мука это довольно хорошо описано в 12 главе.


Последний раз редактировалось caseyryan; 26.02.2013 в 22:01.
Старый 26.02.2013, 22:05
olejan1991 вне форума Посмотреть профиль Отправить личное сообщение для olejan1991 Найти все сообщения от olejan1991
  № 3  
Ответить с цитированием
olejan1991

Регистрация: Jul 2012
Сообщений: 112
вот как раз ее читаю сейчас и именно на currentTarget наступил застой(

Старый 27.02.2013, 09:36
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 4  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Значит понимание прийдет позже. Не все понятно с первого раза. И ничего страшного в этом нет
А тема событий все-таки довольно сложная для понимания новичком. Учитывая еще то, что если это русскоязычный вариант книги, то как раз в этой главе есть ужасные неточности в переводе

Старый 27.02.2013, 10:54
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 5  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
currentTarget указывает на объект, к которому Вы подписывались.
То есть, если Вы писали mc.addEventListener(...), то currentTarget будет указывать на mc и ни на что другое.
А target указывает на объект, непосредственно "родивший" событие.
Потому что currentTarget может быть не родителем, а только передатчиком события, одним из звеньев цепи "всплытия" события, не обязательно первым (target) и не обяззательно последним.
Допустим этот mc — экземпляр Sprite. Если в нем не содержится никаких интерактивных детей, а просто нарисован прямоугольник в его собственном графиксе, то при клике по этому спрайту target и currentTarget будут совпадать — сам родил, сам передал.
Если же в этот спрайт-контейнер будет добавлен другой интерактивный объект, скажем другой спрайт с графикой, и Вы кликаете над этим внутренним спрайтом, то родителем события будет он. Но слушаете то Вы внешний спрайт, и получаете событие от него. Поэтому target и currentTarget будут указывать на разные спрайты, на внутренний и внешний соответственно.
__________________
Reality.getBounds(this);

Старый 27.02.2013, 12:40
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 6  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Я бы все-таки еще упомянул про mouseChildren. Тоже влияет.

Создать новую тему Ответ Часовой пояс GMT +4, время: 20:01.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
currentTarget

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 20:01.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.