PDA

Просмотр полной версии : повторная вставка swf


rxcoder
16.01.2009, 14:23
Здравствуйте, вобщем такая у меня проблема. Мой swf файл грузит в себя другой swf файл(сторонний видеоплеер). Сделал, чтобы сначала создавался новый клип с уникальным именем(об этом ниже), затем в него гружу swf.

/Код урезан для наглядности/


var glob_envelope_obj:Object;
var glob_envelope_cnt:Number = 0;

...

if(_root.glob_envelope_cnt>0){// если раньше вставлял клип - удаляю всякими методами
_root.glob_envelope_obj.unloadMovie();
_root.glob_envelope_obj.removeMovieClip();
}

// тут создаю клип
_root.glob_envelope_cnt++;// это счетчик для клипов-контейнеров
var asName:String = 'mymov_'+_root.glob_envelope_cnt;
_root.attachMovie('envelope',asName,200);// это пустой клип из библиотеки
_root.glob_envelope_obj = eval('_root.'+asName);// переменная-объект
_root.glob_envelope_obj._lockroot = true;

// тут гружу плеер
_root.glob_envelope_obj.loadMovie(url);


получилось в _root.mymov_1 вставился ролик url

ок, подгруженный плеер начинает воспроизведение, всё нормально показывает, но потом настает момент, когда мне нужно загрузить следующий плеер (пока тот-же, с др. параметрами). Опять запускаю код выше, без объявл. параметров (создается клип - _root.mymov_2). В итоге второй загруженный ролик не работает.

Почему постоянно генерю новые клипы? Раньше всё было проще:

// удаляю
_root.mymov.unloadMovie();
_root.mymov.removeMovieClip();
// создаю
_root.createEmptyMovieClip('mymov', 200);
_root.mymov._lockroot = true;
// гружу
_root.mymov.loadMovie(url);


Здесь , первый ролик грузился нормально, он показывал видео. Допустим, когда проигралась 1 минута я пытаюсь загрузить этот клип ещё раз кодом выше. Грузится плеер а время показа видео в нем устанавливается на 1 минуту почемуто и само проигрывание не идет.
Такое ощущение, что клип и не выгружался. Проверял - _root.mymov = undefined после удаления. Откуда тогда он помнит о времени проигрывания предыдущего видеофайла? И почему не показывает видео опять.

В чем проблема? Может кешируется что(тогда и переменные тоже), может выгружаю как-то неправильно(unloadMovie и removeMovieClip вместе поставил уже впоследствии, для уверенности)?

без "_root.mymov._lockroot = true;" не работает.