Просмотр полной версии : массив Sprite со ссылками
Arsenium
31.05.2007, 18:24
Есть массив pic, где каждый элемент является объектом типа Sprite.
Как сделать каждый из объектов ссылкой на какой-то url[i]?
Если я напишу в цикле по i (i от 0 до 9):
pic[i].addEventListener(MouseEvent.CLICK, function (event:MouseEvent):void {navigateToURL(new URLRequest(pic[i].href))});
то при клике на каждом объкте из массива flash пытается перейти по несуществующему url pic[10].href
Как сделать так, чтобы номер i cсылки запоминался для каждого addEventListener?
Если по правильному, то запихнуть в массив наследников Sprite, с реализованным обработчиком нажатия и свойством-ссылкой.
Dendroid
01.06.2007, 11:30
Поменять спрайты на мувиклипы (динамический класс).
В цикле:
pic[i].n = i;
pic[i].addEventListener(MouseEvent.CLICK, function (event:MouseEvent):void {navigateToURL(new URLRequest(pic[this.n].href))});
Статичные классы - это, конечно, строго и круто, но за статичные Loader и LoaderContext поубивал бы индийцев... :)
Сделай свои — наследники Loader :)
BlooDHounD
01.06.2007, 13:56
pic[i].n = i;
pic[i].addEventListener(MouseEvent.CLICK, function (event:MouseEvent):void {navigateToURL(new URLRequest(pic[this.n].href))});Бугага :) и чем в этой функе является this ?
pic[i].n = i;
pic[i].addEventListener(MouseEvent.CLICK, function (event:MouseEvent):void {navigateToURL(new URLRequest(pic[(event.target as MovieClip).n].href))});
Dendroid
01.06.2007, 14:13
Бугага :) и чем в этой функе является this ?
pic[i].n = i;
pic[i].addEventListener(MouseEvent.CLICK, function (event:MouseEvent):void {navigateToURL(new URLRequest(pic[(event.target as MovieClip).n].href))});
This в данном случае передавал основную мысль. :D
Вы правильно поняли. :)
2etc: Ага, часто использую наследника Loader, который всего лишь добавляет одно слово dynamic, а c LoaderContext как? :)
Dendroid
01.06.2007, 14:24
Ну нет вроде, но не я же его создаю. Куда писать-то new myLoaderContext(), когда надо просто загрузить пикчу? :)
Видимо я чего-то не допонял… ну да ладно.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.