Встраивание видео в формате SWF в приложение AIR 2 HTML - PullRequest
1 голос
/ 09 сентября 2010

Я уже некоторое время просматриваю форумы и могу убедиться, что моя проблема не связана с прозрачностью или хромом. У меня есть IFRAME, который находится в «песочнице» приложения , предоставляя ему доступ к файлам в app-storage . Динамические изображения загружаются нормально, но мой динамически генерируемый код <OBJECT>, помещенный в DOM, не загружает SWF-видео. Я вижу объект-заполнитель, но нет видео.

Существуют ли какие-либо требования для встраивания SWF-файла, возможно, требования к размеру (требуются как высота, так и ширина)? Учитывая тот факт, что мой контент является динамическим, и я не знаю размеры SWF-файла, в настоящее время у меня есть два варианта встраивания:

  1. Рассчитать высоту и ширину родительский элемент, и назначьте те значения в параметрах OBJECT.
  2. Использовать 100% ширину и высоту ОБЪЕКТА

Это может вызвать проблемы с пропорциями SWF-файла, который, я надеюсь, можно исправить с помощью шкалы PARAM (http://kb2.adobe.com/cps/127/tn_12701.html).

Пожалуйста, помогите, я еще не смог найти никаких полезных руководств. Я уже следовал документации для встраивания отсюда безрезультатно:

http://help.adobe.com/en_US/AIR/1.5/devappshtml/WS4B441C24-BAE3-4110-91FD-A4E5EEFB2467.html

1 Ответ

0 голосов
/ 29 декабря 2010

К черту, вот обширный объект SWFO, сгенерированный мной, который работает (хотя и избыточно):

var SWFObject = document.createElement("object");
SWFObject.setAttribute("type", "application/x-shockwave-flash");
SWFObject.setAttribute("classid", "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000");
SWFObject.setAttribute("width", "100%");
SWFObject.setAttribute("height", "100%");
SWFObject.setAttribute("id", "movie");

var param1 = document.createElement("param");
param1.setAttribute("name", "movie");
param1.setAttribute("value", 'app-storage:' + filename);

var param2 = document.createElement("param");
param2.setAttribute("wmode", "opaque");

var param3 = document.createElement("param");
param3.setAttribute("bgcolor", "#FFFFFF");

var param4 = document.createElement("param");
param4.setAttribute("allowscriptaccess", "always");

var param5 = document.createElement("param");
param5.setAttribute("quality", "high");

var param6 = document.createElement("param");
param6.setAttribute("flashvars", "wmode=opaque");

var param7 = document.createElement("param");
param7.setAttribute("scale", "ShowAll");

var param8 = document.createElement("param");
param8.setAttribute("classid", "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000");

SWFObject.appendChild(param1);
SWFObject.appendChild(param2);
SWFObject.appendChild(param3);
SWFObject.appendChild(param4);
SWFObject.appendChild(param5);
SWFObject.appendChild(param6);
SWFObject.appendChild(param7);
SWFObject.appendChild(param8);
...