#flash #actionscript #actionscript-2
#flash #actionscript #actionscript-2
Вопрос:
Я пытаюсь получить доступ к flashvar в первом кадре, но они всегда не определены. Что я делаю не так?
Внедрить:
<embed height="300" width="460" FlashVars="config=test" wmode="window" alt=""
classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" salign="t" allowscriptaccess="always"
quality="Autolow" bgcolor="#FFFFFF" name="InteractiveTool" id="InteractiveTool"
style="" src="calc_thr_004.swf" type="application/x-shockwave-flash" />
ActionScript:
trace("level0: " _level0.config);
trace("root: " root.config);
Результатом этого являются:
level0: undefined
root: undefined
Это было разработано в AS2. Как я могу получить значение ‘config’ из flashvar?
Спасибо!
Ответ №1:
Прошло некоторое время с тех пор, как я использовал AS2 или FlashVars, но мне это кажется правильным. Некоторые вещи, которые нужно перепроверить:
- Находится ли ваш
<embed>
тег внутри<object>
тега, у которого нет параметра FlashVars? - Используете ли вы по крайней мере Flash Player версии 6? До этой версии FlashVars не поддерживались.
Любая из этих вещей может привести к тому, что содержимое FlashVars не будет передано на верхний уровень фильма.
Комментарии:
1. Тег embed отсутствует в теге object. Должно ли это быть?
2. Хорошо .. похоже, вам нужен тег OBJECT для совместимости с IE. Я добавил это. Разве я не должен по-прежнему ожидать, что FF увидит переменные?
3. @Nick Вы правы, тег object (если бы он существовал) был бы там только для совместимости с IE. Вы также правы в том, что если бы его там не было, это не вызвало бы проблемы. Как насчет версии Flash Player?
4. 1 за ваши усилия. Я узнал, что проблема заключалась в некоторой «очистке», которая происходила в нашем классе AS. Я проголосовал за закрытие вопроса, поскольку никто здесь не мог этого предвидеть; очевидно. Спасибо за помощь!