Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Как правильно передавать переменную в загружаемую в контейнер свф-ку? (http://www.flasher.ru/forum/showthread.php?t=118712)

orcpochta 01.12.2008 23:13

Как правильно передавать переменную в загружаемую в контейнер свф-ку?
 
Есть флешь-прелоадер, в которую грузится основная флешка в контейнер. Во флеш-прелоадер из хтмл передается переменная с помощью FlashVars, предназначенная для основной флеши. Основная флешь ее, понятно, не видит. Если передавать переменную с помощью присваивания создаваемому свойству контейнера в методе onLoadStart, то, мне кажется, какой-то код из загружаемой флешки успевает выполнится до этого присваивания (или я ошибаюсь?), а необходимо чтобы нужная переменная оказалась в основной флешке до выполнения кода этой флешки. Как это правильно делать?

P.S. Извинте за бредовое изложение проблемы - весь день сегодня дома проработал с температурой, колбасит.

CrazyFlasher 01.12.2008 23:38

Код:

".../my.swf?param=" + someVar

faust.d503 02.12.2008 00:02

можно еще вот так:
Код AS1/AS2:

loader.onLoadComplete = function (mov:MovieClip){
      mov.param = {x:10, y:20};
}


orcpochta 02.12.2008 12:46

Цитата:

Сообщение от CrazyFlasher (Сообщение 780924)
Код:

".../my.swf?param=" + someVar

это что такое? не понял...
Код:

mclLoader.loadClip('my.swf?param=' + someVar, mcContainer);
так?
а если несколько параметров надо передать?

to faust.d503
Код:

loader.onLoadComplete = function (mov:MovieClip){
      mov.param = {x:10, y:20};
}

я так понимаю, что скрипт в первом кадре начинает выполнятся после того как загружен полностью первый кадр (а вдруг там несколько кадров?), а мне надо чтобы переменная была передана во флеш точно до начала выполнения скрипта. Или при загрузке флешки во флешку гарантировано, что код будет выполнятся только после полной загрузки?

CrazyFlasher 02.12.2008 12:56

Цитата:

а если несколько параметров надо передать?
Код:

mclLoader.loadClip('my.swf?param1=' + someVar1 + "&param2=" + someVar2, mcContainer);

orcpochta 02.12.2008 13:04

Спасибо, а на счет передачи через onLoadComplete я прав?

CrazyFlasher 02.12.2008 13:05

а попробовать самому?

orcpochta 02.12.2008 13:14

Цитата:

Сообщение от CrazyFlasher (Сообщение 780993)
а попробовать самому?

не всегда есть время чтобы все самому попробовать, иногда приходится ограничиваться теорией. Точнее хочется знать большего выходя за рамки той задачи которую надо решить в данный момент, но перепробовать все варианты может позволить себе только разве что школьник или безработный, которым делать нечего. К тому же пробовал не через onLoadComplete, а через onLoadStart - получал разные результаты. В одной флешке переменная успевалась передаться до места своего применения, а в другой нет.

CrazyFlasher 02.12.2008 13:26

у меня как бы тоже есть занятия помимо этого :) а т.к. я давно на АС2 не прогал, то уверенно говорить не могу...единственно, что могу сказать точно, что передача переменныч тем способом, который я указал, точно работает так, как вам надо

orcpochta 02.12.2008 16:51

Цитата:

Сообщение от CrazyFlasher (Сообщение 781004)
у меня как бы тоже есть занятия помимо этого :) а т.к. я давно на АС2 не прогал, то уверенно говорить не могу...единственно, что могу сказать точно, что передача переменныч тем способом, который я указал, точно работает так, как вам надо


Оказывается не так как мне надо...(((

У меня есть однин комплект флешек - прелоадер и основная флешка. Есть две страницы, в которые этот комплект флешек загружается, но в одну грузится без параметра, а в другую с передачей параметра. Весь трабл в том, что если делать вашим способом, то несмотря на то, что это один и тот же комплект флешек, браузер думает что они разные и для загрузки одной не использует кэш второй, т.е. приходится снова ждать загрузки как-будто открыл впервые. Если же делать моим корявым способом чере передачу параметра в onLoadStart, то все работает круто, но мне не нравится сам факт предположения, что скрипт может начать выполняться до передачи параметра.

Как все-таки передавать параметр в загружаемую из флешки флешку, чтобы параметр передался 100%-но до начала исполнения кода в загружаемой флешке???


Часовой пояс GMT +4, время: 17:26.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.