PDA

Просмотр полной версии : createEmptyMovieClip - подгружает только 1 свфку???


Rom III
03.10.2006, 18:42
3 кнопоки вызувают функцию look с значением xe = 1, 2 и 3 соответственно.
function look(xe) {
var root = _root.mainmap.map.click;
var mc = root.createEmptyMovieClip("logo_"+xe, root.getNextHighestDepth());
mc.loadMovie("element/"+xe+".swf");
}
по идее должно создаться 3 клипа logo_1, logo_2 и logo_3 в которые подгрузятся 1.swf, 2.swf и 3.swf соответственно. НО отображаеться только какойнибудь один клип, а можно подгружать 3 клипа сразу, одновременно?

BigDan
03.10.2006, 19:04
Ты пойми: когда ты загружаешь в клип внешний свф или джепег при помощи loadMovie(), то содержимое клипа перед загрузкой удаляется. И этого не изменить

Rom III
04.10.2006, 10:45
а другие способы есть подгрузить внешний свф?

Juice_Green
04.10.2006, 10:55
2 Rom III:
что значит одновременная загрузка в вашем понимании?

не знаю в чем проблема, но написано все верно вроде, если конечно формат вызова функции соотвествующий. А лучше использовать MovieClipLoader.

Rom III
04.10.2006, 11:11
Я понял в чем проблема!!!
если каждой кнопка(i++) назначить код

var root = _root.mainmap.map.click;
root.createEmptyMovieClip("logo_(i++) ", (i++) );
loadMovie("element/text.swf", root.logo_(i++) );

все работает и подгружаются все 3 свфки одновременно, а если так

root.createEmptyMovieClip("logo_(i++) ", root.getNextHighestDepth();
то ини друг друга заменяют т.е. getNextHighestDepth() в данном случае указывает на один и тотже слой, блин, без бутылки в АС не разберешься :)
Если у кого будет подобная проблема, то решать ее можно введя в функцию дополнительную переменную

function look(xe, dop) {
var root = _root.mainmap.map.click;
var mc = root.createEmptyMovieClip("logo_"+xe, root.getNextHighestDepth()+Math.abs(dop));
mc.loadMovie("element/"+xe+".swf");
}

iNils
04.10.2006, 13:06
А у меня самый первый код работает. Rom III, у вас случаем флеш не 6-ой версии?

Rom III
04.10.2006, 13:24
MX у меня:umnik2:

iNils
04.10.2006, 13:26
MX у меня:umnik2:
Тогда я советую заглянуть в хелп и посмотреть версию плеера с которого метод getNextHighestDepth() доступен.