Просмотр полной версии : Аналог watch в AS3
У меня есть на бекграунде картинка. Мне нужно чтобы была возможность из JavaScript динамически менять мой бекграунд. Для этого я в AS2 делал так:
var backImage :String;
var watcher:Function = function(prop, oldVal, newVal)
{
return reloadImg(newVal); //функция загрузки моей картинки
}
watch("backImage", watcher);
Подскажите плз, как мне это сделать в AS3? Может есть какие-то ивенты?
Kadgar, отредактируйте свой пост и оформите код тегами .
Используйте ExternalInterface:
function callMe(name:String):String
{
return "busy signal";
}
ExternalInterface.addCallback("myFunction", callMe);
где myFunction-объявление функции в JS, callMe - реальная ф-ция в AS3
из JS вызываем:
<script language="JavaScript">
// callResult gets the value "busy signal"
var callResult = flashObject.myFunction("my name");
</script>
Спасибо, flash33, но есть одна проблема...
Я использую SWFObject.
Вот мой код:
<script type="text/javascript">
var so = new SWFObject("map.swf","myMap","720","320","9","#336699");
so.addParam("MENU", 'false');
so.write("flashcontent");
// подгружаю бекграунд
myMap.setBackground('123.gif');
</script>
Так вот в момент когда я вызываю функцию setBackground, может возникнуть ситуация, когда ролик еще не успел подгрузиться, тогда бекграунд не меняется.
Раньше я решал эту проблему с помощью функции addVariable :
<script type="text/javascript">
var so = new SWFObject("map.swf","myMap","720","320","9","#336699");
so.addParam("MENU", 'false');
so.addVariable('backImage', '123.gif');
so.write("flashcontent");
</script>
А в AS3 когда я делаю addVariable, то ничего не происходит.
См. loaderInfo.parameters.
__etc, спасибо, теперь все работает)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.