Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Flash 8. onEnterFrame (http://www.flasher.ru/forum/showthread.php?t=79744)

alexanderpovkh 15.05.2006 07:48

Flash 8. onEnterFrame
 
Народ! тут такая трабла.
У меня есть такой кусочек кода:

this.onEnterFrame = function() {
i ++;
if (i < Number(myXml.firstChild.childNodes.length) + 1) {
nb = menu.attachMovie('mb', 'mainButton' + i, i);
nb._y = mh;
nb.mSets(myXml.firstChild.childNodes[i-1]);
mh += nb._height + 1;
} else {
delete this.onEnterFrame;delete i;delete mh;
}
};


При компиляции во Флэш 6 всё работает, а если в версии выше выше, то просто сразу переходит к ELSE!

Не могу понять причину! Уже всю гллову сломал.
Помогите! Хэлп!

0xFFFFFF 15.05.2006 08:34

может ошибка в другой части кода?

Nirth 15.05.2006 08:41

Протрейсь i

0xFFFFFF 15.05.2006 08:43

Цитата:

Сообщение от Nirth
Протрейсь i

и myXml.firstChild.childNodes.length за одно..

alexanderpovkh 15.05.2006 09:30

Разобрался в чём дело.
проблема была в том, что просто так инкрементировать переменную "из неоткуда" нельзя, как по предыдущих версиях. Сначала нужно задать значение i, mh и так далее. В противном случае значение этих переменных будет NaN.

Вот такая простая не простая задачка. Не ожидал такого поворота в мире флэш.
по-моему лучше вернуться к флэш 6. Там всё работает и все методы знакомы.

Всем спасибо!

Kinsler 15.05.2006 11:41

хм
логическе-то как раз правильно ЗАДАВАТЬ переменную, перед любыми действиями с ней.

alexanderpovkh 15.05.2006 12:21

Не спорю, но привычка штука сильная... а именно привычка НЕ ЗАДАВАТЬ переменную..

motor4ik 15.05.2006 12:25

про AS 3 даже не думайте, там вообще у Вас ничего работать не будет :)

Friday13 15.05.2006 12:33

Ага. Расслабились ребятки в 6-ке, про типы уж и позабыли все:)

etc 15.05.2006 12:58

Такая "ботва" началась с шестёрки.
В пятёрке славно было:

Код:

onClipEvent(enterFrame) {
    i++;
    trace(i);// 1,2,3,4,5....
}



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

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