2016-10-31 3 views
1

Я создал кнопку в Adobe Animate, которая должна, если вы нажмете его на другую кнопку другого цвета, через 1 секунду вы должны быть перенаправлены на предыдущую сцену.Задержка внутри внутри функции

Мой код:

button_answer_2.addEventListener(MouseEvent.CLICK, fl_ClickToGoToPreviousScene); 
function fl_ClickToGoToPreviousScene(event:MouseEvent):void 
{ 
    button_answer_2.visible = false; 
    button_answer_2_red.visible = true; 


     setTimeout(myDelayedFunction,3000); 
     function myDelayedFunction(){ 
       MovieClip(this.root).prevScene(); 
      } 
} 

печально myDelayedFunction не работает, потому что он находится внутри другого Fuction, я не могу видеть analternative путь. Может ли кто-нибудь мне помочь? (Я не лучший программист, поэтому держите его простым, если это возможно)

Спасибо за ваш ответ

ответ

0

Использование встроенных функций и тест снова, я не могу проверить это сейчас:

setTimeout(function(){ MovieClip(this.root).prevScene(); }, 3000); 
+1

Это выражение функции, которое вызывает 'this' как глобальный объект. Это не является частью иерархии списка отображения и не имеет свойства 'root'. – null

1

Тогда почему а не просто переместить функцию из другой. Никогда не было причины их гнездовать.

button_answer_2.addEventListener(MouseEvent.CLICK, fl_ClickToGoToPreviousScene); 
function fl_ClickToGoToPreviousScene(event:MouseEvent):void 
{ 
    button_answer_2.visible = false; 
    button_answer_2_red.visible = true; 

    setTimeout(myDelayedFunction,3000); 
} 

function myDelayedFunction():void 
{ 
    MovieClip(this.root).prevScene(); 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^