我尝试从外部源或本地源加载flash(swf文件),
我在html中使用object标签包含flash由于某种原因, 如果我直接在对象标签中加载闪存,它将完美无缺地工作,如下:
<object height="100" width="100" data="helloworld.swf" id="flash"></object>
接下来,我需要从JavaScript动态加载Flash,但会出现几个问题:
var flash=document.getElementById("flash");
flash.setAttribute("data","helloworld.swf");
上面的代码在Chrome中运行良好,但它在IE中没有做任何事情(我的IE在Windows 8上是IE11)
如果我将对象标签修改为iframe标签,那么它可以工作,但我需要它作为对象标签,
任何解决方案都会浮现在脑海中?
答案 0 :(得分:3)
您可以通过阅读对象强制刷新:
var flash = document.getElementById("flash");
flash.setAttribute("data","helloworld.swf");
var clone = flash.cloneNode(true);
flash.parentNode.replaceChild(clone, flash);
答案 1 :(得分:0)
使用SWFObject。它将为您节省所有跨浏览器兼容性问题。