Просмотр полной версии : Как ускорить переход к кадру
Добрый день.
У меня в скрипте уже при загрузке флэшки прописаны переходы gotoAndStop к определенным кадрам в зависимости от условий.
Но почему-то переход происходит не моментально а заметны проскакивающие промежуточные кадры. Тоесть бегающая головка на таймлайне хоть и быстро он успевает при переходе показать другие ненужные кадры.
Размер флешки примерно 200 kb. Код около 2500 строк.
Как сделать так, чтобы переход происходил моментально? Чтобы НЕ показывались кадры которые между ними?
gotoAndStop('нужный кадр');
либо стройте структуру сразу правильно, чтобы не было ненужных промежуточных кадров.
Или вообще откажитесь от проигрывания всего сразу на основном таймлайне, делайте переходы между кадрами, а в кадры вставляйте нужные мувики, которые и будут проигрываться.
gotoAndStop('нужный кадр');
либо стройте структуру сразу правильно, чтобы не было ненужных промежуточных кадров.
Или вообще откажитесь от проигрывания всего сразу на основном таймлайне, делайте переходы между кадрами, а в кадры вставляйте нужные мувики, которые и будут проигрываться.
ВЫ неправильно поняли проблему.
Что значит "правильная структура"?
У меня есть 16 кадров, каждый кадр (фрейм) это другая картинка(другой этаж) и каждому кадру прилагается код в верхнем слое в первом кадре.
Так вот например мне надо чтобы когда пользователь на сайте нажал допустим на 10 этаж, то при загрузке флэшки сразу открывался нужный кадр (картинка 10-го этажа).
А сейчас видно как головка пробегает по всем кадрам.
По-моему вам все правильно сказали
U4enik тебе сказали все правильно, а то что не получается, значит что-то не так делаешь, и 2500 строк кода чтоб переходить от картинки к картинке - не увязочка
Вот тут поподробнее:
"при загрузке флэшки прописаны переходы gotoAndStop к определенным кадрам в зависимости от условий."
Что значит, "при загрузке"? С помощью flashvars эти условия задаете?
http://prama.kiev.ua/ru/kvartiry/sekcija_1.htm?etag=20&sec=1
Вот ссылка, мне просто требуется убрать эффект дребезжания из-за пробигания кадров.
Да, переменные загружаются с помощью flashvars
тут может быть такое:
1. условие задано неверно
2. stop() в кадрах пока никто не отменял
Не надо ничего "ускорять". У вас там при публикации используются flashvars:
flashvars="sec=1&etag=20&...
Вот и сделайте первый кадр пустым во флешке, чтобы ничего не промелькивало и запишите там код. Используйте полученные при публикации от flashvars значения, например, так:
switch (sec)
{
case '1':
switch (etag)
{
case '10':
gotoAndStop('fr_10');
break ;
case '11':
gotoAndStop('fr_11');
break ;
}
break ;
case '2':
switch (etag)
{
case '12':
gotoAndStop('fr_12');
break ;
case '13':
gotoAndStop('fr_13');
break ;
}
break ;
}
Это первое, что пришло в голову. Можно как-то по-другому разбирать, сами смотрите.
Функцию простую написать какую-то, назвав кадры опр. образом. Типа:
gotoAndStop('fr_s' + sec + '_e' + etag);
тут может быть такое:
1. условие задано неверно
2. stop() в кадрах пока никто не отменял
Условие задано верно.
А вот stop(); в кадрах поподробнее пожалуйста
Добавлено через 45 минут
Пока проблема не решилась...
в подгружаемой flash в первом кадре поставьте stop();
U4enik
"Само по себе" нечего непроисходит :)
пс. Поставь стоп в самом первом кадре.
U4enik
"Само по себе" нечего непроисходит :)
пс. Поставь стоп в самом первом кадре.
Поставил, но теперь флешка тупо висит на первом кадре и никуда не перескакивает.:(
Добавлено через 30 минут
Получается что если stop поставить в начале кода, то код не выполняется, а если в конце, то stop не работает.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.