Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Интеграция Flash с... (http://www.flasher.ru/forum/forumdisplay.php?f=2)
-   -   Как можно в flash-ролик передать какие-нибудь переменные? (http://www.flasher.ru/forum/showthread.php?t=59365)

B0Bka 15.06.2004 00:59

Как можно в flash-ролик передать какие-нибудь переменные?
 
Как можно в flash-ролик передать какие-нибудь переменные?
Можно ли это как-то сделать через javascript функцию
(типа: <a href="javascript:send_id_pres(1);">link</a>)

Tyler Durden 29.06.2004 19:12

:confused: На самом деле сам интересуюсь этим вопросом. Как можно из JavaScript'a передать переменные во Flash...? Неужели никто не знает?!!
Я слышал что-то про Active X и т.д. Это еще в хелпе по Флэшу написано... Но ничего конкретного...

wwwita 30.06.2004 17:13

можна :D
несколькими способами:
1. через сервер и класс LoadVars (вариант c LoadVariables тоже работает)
2. через сервер и класс XML
3. через яваскрипт в id либо name внедренного объекта (не работает в Опере)
4. через actionscript:... что-то там -- посмотрите в мануале
5. можно ещё делать file.swf?var1=ttt -- в тех местах внедренного документа, где написано file.swf...

может я ещё не все способы написал..... посмотрите мануал -- там все подробно и с примерами :cool:

Tyler Durden 30.06.2004 19:08

Спасибо! Но только ничего не выходит...

Предположим, что в фильме js_test.swf есть поле динамического текста pole1. Фильм уже загружен в броузер.
Код:

<OBJECT classid="..." codebase="..." id="js_test">
<EMBED src="js_test.swf" NAME="js_test"></EMBED>
</OBJECT>

Также допустим, что на HTML-страничке, в которую загружен js_test.swf, есть кнопка. При нажатии на эту кнопку содержимое поля pole1 должно принимать значение, к примеру, "Knopka nazhata!"...

Вопрос в том, как обратиться к переменной pole1 фильма js_test.swf? Через id и name не получается... То есть
Код:

<input type="button" value="Test" onClick="document.js_test.pole1.value = 'Knopka nazhata!'">
не работает...

Что-то все это как-то неправдоподобно, чтобы так просто можно было передавать значения переменным во Flash'е из броузера... Или я не прав? :)

moksha 04.07.2004 13:54

<input type="button" value="Test" onClick="document.js_test.SetVariable('pole1','Kno pka')"/>

и все заработает

(по моему я это в стандартной документации прочитал ;-)

Tyler Durden 05.07.2004 11:24

Благодарю тебя, любезный соотечественник... Все заработало!

Prokur 05.07.2004 20:19

А можно как-то передать переменную в флеш через параметр? Например <param name=menu value=false> Вырубает меню флеша.
Как передать переменную при загрузке ролика. Например есть ролик, в нём два языка. RU и EN. Мне надо переменная lang.
Как мне сделать что-то такое <param name=lang value=en>
И как мне её вытащить в флеше?

wwwita 05.07.2004 22:01

ищешь file.swf в html коде (2 места), меняешь его на file.swf?lang=en

во флеше обращаешься к переменной lang как _root.lang, то есть как к обычной :)

moksha 06.07.2004 00:09

Цитата:

Оригинал написал(а) wwwita
ищешь file.swf в html коде (2 места), меняешь его на file.swf?lang=en

во флеше обращаешься к переменной lang как _root.lang, то есть как к обычной :)

или воспользоваться параметром тега <OBJECT> под названием
FLASHVARS (см. документацию по публикации в браузере на сайте макромедии)

<param name="flashvars" value="lang=ru&v1=321&v2='some+value'"/>

в качестве альтернативы к "file.swf?lang=en" такой вариант имеет некоторые преимущества, как-то:
позволяет использовать swf сохраненный в кеше браузера,
строка может быть длиной до 64kb (в отличие от 256b)
строки создаются до начала проигрывания 1 кадра

доступ к переменным, как и в предыдущем случае, из корня swf-ки

dimka_b 13.07.2004 18:48

вопрос про обновление
 
Я могу обновлять переменные в flash'е. А как мне сделать так чтобы вызвалось какое-нибудь событие или фунция Flash из JavaScript. мне надо чтобы перерисовался flash с новыми данными.

moksha 14.07.2004 09:06

Re: вопрос про обновление
 
Цитата:

Оригинал написал(а) dimka_b
Я могу обновлять переменные в flash'е. А как мне сделать так чтобы вызвалось какое-нибудь событие или фунция Flash из JavaScript. мне надо чтобы перерисовался flash с новыми данными.

идем сюда

http://www.macromedia.com/support/fl...ishexport.html

а точнее сюда

http://www.macromedia.com/support/fl...ash/index.html

и скорее всего сюда

http://www.macromedia.com/support/fl...hflash_03.html

удачи !

FreeLander 17.07.2004 12:51

на самом деле там нет методов вызова функции ролика из JavaScript. Я, например, делаю следующим образом: отслеживаю какую-нидь переменную в ролике при помощи watch, т.е. прикрепляю функцию на событие изменения этой переменной, т.о. изменяя эту переменную при помощи setVariable из Явы, я инициирую выполнение функции.


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

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