|
|
|||||
Регистрация: Jun 2005
Сообщений: 3
|
Задержка выполнения кода [2]
как можно осуществить такое:
1. идет последовательность кадров. один кадр нужно задержать на определенное количество секунд, затем воспроизведение продолжится. 2. нужно несколько кадров повторить определенное количество раз, затем воспроизведение продолжается как обычно 3. в один из кадров вставлен символ (во флэше он вроде так называется, другими словами - несколько кадров в одном) нужно дождаться, когда символ олностью проигратся, потом воспроизведение продолжается со следующего кадра |
|
|||||
Ветеран форума
|
Вот например задержка в десятом кадре на две секунды
__________________
BestMasterиZация |
|
|||||
2Arhip >>Как организовать задержку, скажем не на 2 секунды, а на 5 кадров?
Последний раз редактировалось Nirth; 23.06.2005 в 15:12. |
|
|||||
Цитата:
возобновления проигрывания работать не будет, потому как play без объекта приложения ничего не запустит, то что ты передаешь this.play ничего не меняет - все равно это только ссылка на функцию и вызовется она через setInterval в пустоте.. чтобы заработало придется передать еще и объект, который эту функцию вызовет: function create (ob,fnct,dly){ var arg=arguments.splice(3);// для этого примера не нужна, но если функция с параметрами, то пригодится var id = setInterval (function (a){ fnct.apply(ob,a); clearInterval (id); }, dly, arg); } ////////////////////// this.stop(); create(this,play,1000) /** * original idea by Silin * @author Silin * @version 1.2 */ class orange.utils.DelayEvent { /** * Creating the delay for function or method * @usage orange.utils.DelayEvent.create(myObject,myMethod,delay) * @param target target wich has the method to delay * @param func function to delay * @param delay delay in ms * @return nothing */ public static function create (target:Object,method : Function, delay : Number) : Void { var args:Array = arguments.splice(3); var id:Number = setInterval (function (args) { method.apply(target,args); clearInterval (id); }, delay, args); } } Последний раз редактировалось Nirth; 23.06.2005 в 15:11. Причина: дополнил |
Часовой пояс GMT +4, время: 10:05. |
|
« Предыдущая тема | Следующая тема » |
|
|