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

Регистрация: Aug 2010
Адрес: Саратов
Сообщений: 185
По умолчанию Странности цикла

Я конечно понимаю, что данный заголовок скорее подойдет для форумов с другой тематикой... Проблема именно в цикле...) Вопрос сугубо теоретический, но поверг меня в недоумение, попытаюсь вкратце описать.

Я добавляю объекты (box) используя распространенный цикл for, создаю обработчик, который при наведении на бокс выделяет его, выглядит примерно так:
Код AS3:
 
public function friendsLoaded():void
{
	for (i = 0; i < 6; i++)
	{ 
		add();
	}
}
 
public function add():void {
     //объект бокс, его свойства и т.д. 
}
 
box.addEventListener(MouseEvent.ROLL_OVER, evnt);
box.addEventListener(MouseEvent.ROLL_OUT, evnt1);
 
function evnt(e:MouseEvent):void {
	box.alpha = 0.5;
}
 
function evnt1(e:MouseEvent):void {
	box.alpha = 1;
}
При наведении курсора на любой объект, выделяется именно он

если я не создаю доп. функцию, а делаю все непосредственно в цикле, так:
Код AS3:
public function friendsLoaded():void
{
	for (i = 0; i < 6; i++)
	{ 
		//объект бокс, его свойства и т.д.
	}
}
 
box.addEventListener(MouseEvent.ROLL_OVER, evnt);
box.addEventListener(MouseEvent.ROLL_OUT, evnt1);
 
function evnt(e:MouseEvent):void {
	box.alpha = 0.5;
}
 
function evnt1(e:MouseEvent):void {
	box.alpha = 1;
}
выделяется самый крайний нижний объект, при наведении на любой... Логичный вопрос - почему?


Последний раз редактировалось udaaff; 12.10.2011 в 16:03.