Я пытаюсь передать параметры в мой SWF-файл с помощью Flash Vars. Я использую Swfobject, чтобы встроить мой SWF. Однако я не могу получить доступ к этим flashvars внутри SWF-файла. У меня были проблемы с этим уже несколько недель. Я искал в интернете, документации swfobject и другие вопросы, связанные с этим.
Вот мой код js, использующий swfobject для встраивания файла swf.
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
var flashvars = {};
flashvars.name1 = "hello";
swfobject.embedSWF("Comics.swf", "myContent", "950", "650","9.0.0","expressInstall.swf", flashvars, flashvars,flashvars);
</script>
Вот мой HTML-код для встраивания
<div id="myContent"></div>
SWF отлично встроен и выдает следующее
<object type="application/x-shockwave-flash" name1="hello" data="Comics.swf" width="950" height="650" id="myContent" style="visibility: visible; ">
<param name="name1" value="hello">
<param name="flashvars" value="name1=hello">
</object>
Опять же, SWF встраивается нормально. Я могу видеть содержимое, но flashvars кажется нулевым.
Вот мой флэш-код, который пытается получить доступ к flashvars
var flashVars = root.loaderInfo.parameters;
addChild(Util.newLabel(" FlashVars: " + flashVars+" "+root.loaderInfo,0,0,400,100,12,0x0));
var y=0;
for(var i in flashVars){
addChild(Util.newLabel("FlashVars:"+i+":"+flashVars[i],0,y+=30,300,100,12,0x0));
}
Util - это пользовательский класс, который я создал, где newLabel (str: String, x: Number, y: Number, w: Number, h: Number, fontSize: uint, color: uint) представляет собой метод, который возвращает компонент метки с str в качестве его текста, x и y в качестве его местоположения, w и h в качестве его размеров и т. д. Я почти уверен, что утилита работает, поэтому я хотел бы знать, как я действительно загружаю flashvars?
Я должен увидеть список имен переменных при запуске этого кода.
PS: приведенный выше флэш-код кодируется в основной временной шкале (я использую flash ide для компиляции моего кода), в первом кадре, пока Util находится в отдельном файле. Корневой объект в первом кадре на главной временной шкале - это [объект MainTimeline].
Дайте мне знать, если вам нужна дополнительная информация. Заранее спасибо.