Форум 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)
-   -   не удается назначить объекту функции onRollOver onRollOut (http://www.flasher.ru/forum/showthread.php?t=111127)

Zhihar 16.04.2008 16:54

не удается назначить объекту функции onRollOver onRollOut
 
Приветствую

есть объекты - mcLink1, mcLink2

когда каждому объекту прописываю функцию

Код:

on(rollOver)
{
        RollUp(0);
}

on(rollOut)
{
        RollOut(0);
}

а когда решил сделать так (чтобы не писать одно и тоже много раз):

Код:

for (nIndex = 0; nIndex < g_pObjects.length; ++ nIndex)
{
        g_pObjects[nIndex].onRollOver = function()       
        {
                RollUp(nIndex);
        };

        g_pObjects[nIndex].onRollOut = function()       
        {
                RollOut(nIndex);
        };               
}

код в слое где и кнопки

то почему-то работать перестало, хотя цикл выполняется

Vertax 16.04.2008 17:11

Так не выйдет.
Как вариант можно что то типа:
Код:

g_pObjects = [mcLink1, mcLink2];
for (nIndex = 0; nIndex < g_pObjects.length; ++ nIndex)
{
      g_pObjects[nIndex].nIndex = nIndex;       
      g_pObjects[nIndex].onRollOver = function()       
        {
                RollUp(this.nIndex);
        };

        g_pObjects[nIndex].onRollOut = function()       
        {
                RollOut(this.nIndex);
        };               
}


Ведьмак 16.04.2008 19:56

помоему чем создавать массив и туда описывать нужные объекты (а если их 49 ?) проще сделать for..in


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

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