Загрузить flash из JavaScript с тегом объекта
Я пытался загрузить Flash (SWF-файл) из внешних источников или локальных источников,
Я использую тег объекта в html, чтобы по какой-то причине содержать флэш-память. Если я загружу флэш-память непосредственно в тег объекта, она будет работать без сбоев, например:
<object height="100" width="100" data="helloworld.swf" id="flash"></object>
Далее мне нужно динамически загрузить флеш из JavaScript, но возникает несколько проблем:
var flash=document.getElementById("flash");
flash.setAttribute("data","helloworld.swf");
приведенный выше код прекрасно работает в Chrome, но в IE он ничего не делает (мой IE - это IE11 в Windows 8)
Если я изменю тег объекта на тег iframe, то он будет работать, но мне нужно, чтобы он был тегом объекта,
Какие решения приходят на ум?
2 ответа
Вы можете принудительно обновить, читая объект:
var flash = document.getElementById("flash");
flash.setAttribute("data","helloworld.swf");
var clone = flash.cloneNode(true);
flash.parentNode.replaceChild(clone, flash);
Используйте SWFObject. Это избавит вас от всех проблем совместимости с различными браузерами.