PDA

Просмотр полной версии : исчезает мувик


TanaTiX
06.04.2008, 02:23
Есть флэш с несколькими кадрами. Во 2м применяется такая функция:
function slider() {
for (i=4; i>0; i--) {
_root.first_mc.createEmptyMovieClip("img"+i,_root.first_mc.getNextHighestDepth());
_root.second_mc.createEmptyMovieClip("img"+i,_root.second_mc.getNextHighestDepth());
_root.first_mc["img"+i].createEmptyMovieClip("cont",_root.first_mc["img"+i].getNextHighestDepth());
_root.second_mc["img"+i].createEmptyMovieClip("cont",_root.second_mc["img"+i].getNextHighestDepth());
_root.my_mcl.loadClip("img/logo_season"+i+".jpg",_root.first_mc["img"+i].cont);
_root.my_mcl.loadClip("img/logo_season"+i+".jpg",_root.second_mc["img"+i].cont);
}
}
При 1м посещении страницы все нормально, но при возвращении все мувики _root.first_mc.img* исчезают.
Почему так происходит и как это побороть?
ЗЫ. функция срабатывает только при 1м посещении фрэйма (флаг), но ведь созданный там программно мувик должен там же и "остаться"...

$mival
06.04.2008, 04:53
посмотри в дебаггере :)

TanaTiX
06.04.2008, 13:00
$mival, и что там смотреть? Когда захожу на страницу мувики создаются, когда ухожу - они исчезают. Потому тут и спрашиваю...

$mival
06.04.2008, 13:17
код хоть и не читабельный но правильный.
могу сказать тольк одно: завязывай писать код в кадрах и таких проблем не будет.

TanaTiX
06.04.2008, 13:54
извиняюсь за нечитабельность, но у меня из всего проекта только эта часть работать отказывается. Я так понимаю, что лучше писать в классах, выносить код в as-файл?
По обозначенной проблеме прикрепляю исходник (картинок там нет, не в них проблема, но при желании скину для удобства)

iNils
06.04.2008, 21:34
После перехода со второго на третий кадр, со сцены исчезает first_mc со всем содержимым. А при возращении обратно, функция slider, которая создавала содержимое этого мувика, не вызывается. Поэтому трейс выдает undefined.

В данном примере надо first_mc расположить в кадрах 2 и 3, а сам клип прятать с помощью свойства _visible тамлайне

TanaTiX
06.04.2008, 22:08
iNils, а почему оно исчезает? Можно ли как-то это обойти что б не нужно было прописывать в каждом кадре то, чего там быть не должно (в реальном проекте это не 3 кадра и несколько подобных мувиков)?

ЗЫ. я ради эксперимента создал в отдельном документа 2 фрэйма: в одном создавался программно мувик (правда в него я ничего не загружал) и была осуществлена навигация по кадрам. При этом не смотря на флаг все работало, объект трэйсился и никуда не исчезал.

iNils
06.04.2008, 22:14
Потому, что вы так сделали. У вас first_mc только во втором кадре существует.

TanaTiX
06.04.2008, 22:32
...
ну так она только там и должна существовать, как и все, что туда подгружается
я наверное чего-то не догоняю или не правильно объясняю:wacko:
Проблема именно при возвращении во 2й кадр, при его 1м посещении все работает.
Или если я создаю программно мувик в нужном кадре, то он будет там жить только до тех пор, пока я из него (кадра) не выйду, и тогда при возвращении нужно его создавать заново?:eek: :confused:

iNils
06.04.2008, 23:31
Перечитайте пост номер 6, там все сказано.