В книге Колина Мука "ActionScript. Подробное руководство" есть пример на 228 стр. По аналогу с ним создал клип, в первом слое
function doCommand (command){
command();
}
на 15 кадре ключевой кадр, в котором doCommand(stop);
Во втором слое с 1 по 20 кадр идет движение клипа. Вопрос первый - почему не останавливается клип, т.е. не срабатывает вызов?:(
Пример на той страницы совсем из другой области.
Надо сделать так
function doCommand (command, arg) {
command.apply (arg);
}и такdoCommand (stop, this);
Но вопрос зачем? Почему не просто
this.stop ();?
Большое спасибо, iNils, за оперативный ответ! Все получилось!:drinks: Это даже лучше, можно передавать действие со ссылкой на того, кому предназначено действие, но, со стопом и плеем все работает, но надо было для другого.
Нужно было чтобы функция задержки(таймера) была одна для всего клипа, а вызывать ее внутри любого мувика, где прописаны свои собственные функции, о которых ничего не знает основная сцена. Теперь есть первый кадр, в нем написано
//Единая функция задержки клипа//
function func_shetchik(method,arg_playing,arg) {
clearInterval(zadergka)
method(arg_playing).apply(arg)
}
function My_zadergka(milisek,method,arg_playing,arg){
var zadergka=setInterval(func_shetchik,milisek,method,arg_playing,arg);
}
stop()
krug.stop()
/////////////////////////////
В этом же кадре мувик "krug". Внутри "krug"-а анимация, и написано
Playing=function(arg_playing){
trace(arg_playing)
play()}
_root.My_zadergka(1000,Playing,"Ф-я Playing",this)
На 15 кадре стоит ключевой, где
_root.My_zadergka(10,stop,this)
Что неправильно в этом коде? Почему он не работает?
Точнее почему не останавливается мувик на 15 кадре? и правильно ли написан код?
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.