Форум 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)
-   -   неработает clearInterval (http://www.flasher.ru/forum/showthread.php?t=153850)

Prior 09.04.2011 14:24

неработает clearInterval
 
подскажите почему неработет clearInterval
код находиться в одном кадре
Код AS1/AS2:

var hideint:Number = setInterval (hidepic, 1000);
stop();
 
function hidepic () {       
        trace ('hidepic');
        clearInterval (hideint);
        cont = 'm' +_root.num + '_mc';
        new Tween(_root.all_mc[cont], "_alpha", Strong.easeOut, 100, 0, 2, true);
        var setint:Number = setInterval (showpic, 1000);
        stop();
}
 
function showpic ()        {
        trace ('showpic');
        clearInterval(showint);
        randommal(_root.num);
        cont = 'm' +_root.num + '_mc';
        mcl.addListener(temp);
        mcl.loadClip(_root.pic[_root.num], _root.all_mc[cont].pic);
        _root.num=_root.num+1;
        if (_root.num>2){num=0};
        var hideint:Number = setInterval (hidepic, 1000);
        stop();
}


mooncar 09.04.2011 15:06

1. Области видимости не совпадают. У вас интервалы присваиваются локальным переменным.
Уберите при назначении интервалов var.
Код AS1/AS2:

var hideint:Number = setInterval (hidepic, 1000);
var setint:Number ;
var showint:Number ;
 
....
 
function hidepic()
{
        clearInterval(hideint);
        ....
        setint = setInterval (showpic, 1000);
        ....
}
 
function showpic()
{
        clearInterval(showint);
        ....
        hideint = setInterval (hidepic, 1000);
        ....
}

2. И еще. Вы стираете интервал
Код AS1/AS2:

clearInterval(showint);

А назначаете setint
Так задумано?


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

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