Flash加载两次解决方法?
Posted
技术标签:
【中文标题】Flash加载两次解决方法?【英文标题】:Flash loads twice workaround? 【发布时间】:2010-10-04 17:42:28 【问题描述】:在调查报告的我的网站加载缓慢的问题时,我遇到了一个问题,我注意到(通过 firebug)我的 flash 文件加载了两次。
经过一番调查,我找到了firefox bug,并结合了 SWFObject 2.0 的使用。
现在,我注意到有人提到您可以通过以下方式解决该问题:
仅供参考,如果您是网页开发人员,那么获取网页的简单解决方法 使用 FF3 是延迟访问任何插件,直到您的页面 完全读取。一个简单的方法是安排你的插件脚本代码 使用 window.setTimeout 超时运行所有待处理的浏览器事件 零。
老实说,我不知道他们在说什么,希望有人能给我一个可行的代码示例。
您知道实现这项工作的方法以及代码的外观吗?任何帮助将不胜感激!
【问题讨论】:
【参考方案1】:<script>
function loadswf()
swfobject.registerObject("myobj", "9.0.0");
function init()
window.setTimeout("loadswf()", 0);
</script>
<body onload="init()">
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="myobj">
<param name="movie" value="style.swf">
<param NAME=FlashVars VALUE="url=stylelist">
<!--[if !IE]>-->
<object type="application/x-shockwave-flash" data="style.swf" >
<param name="flashvars" value="url=stylelist">
<!--<![endif]-->
<a href="http://www.adobe.com/go/getflashplayer">
<img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" />
</a>
<!--[if !IE]>-->
</object>
<!--<![endif]-->
</object>
【讨论】:
嗯,这是不同的行为,但它会加载 Flash,然后它会完全消失,我的浏览器页面中会出现白屏... 我认为我们可能正在做两件不同的事情。我的是一个涉及上面代码的思想实验。我不确定您使用的是什么代码——也许您可以包含完整的代码?我修改了我的工作代码以符合 setTimeout 的想法。此外,这可能是 swfobject 1。【参考方案2】:确保您在响应中设置了 Cache 和 Expires 标头。我在对象标签中遇到了类似的问题,两次调用服务器。将 Expires 标头设置为在当前时间之后 5 秒会阻止第二次调用。 高温
【讨论】:
它没有为我解决问题【参考方案3】:这也可能是由于CDNs 配置不正确造成的,他们可能没有发送完整的内容或抛出 206 或其他 http 错误。
【讨论】:
以上是关于Flash加载两次解决方法?的主要内容,如果未能解决你的问题,请参考以下文章
[解决] springmvc 初始化两次WebApplicationContext