【问题标题】:Flash loads twice workaround?Flash加载两次解决方法?
【发布时间】:2010-10-04 17:42:28
【问题描述】:

在调查报告的我的网站加载缓慢的问题时,我遇到了一个问题,我注意到(通过 firebug)我的 flash 文件加载了两次。

经过一番调查,我找到了firefox bug,并结合了 SWFObject 2.0 的使用。

现在,我注意到有人提到您可以通过以下方式解决该问题:

仅供参考,如果您是网页开发人员,那么获取网页的简单解决方法 使用 FF3 是延迟访问任何插件,直到您的页面 完全读取。一个简单的方法是安排你的插件脚本代码 使用 window.setTimeout 超时运行所有待处理的浏览器事件 零。

老实说,我不知道他们在说什么,希望有人能给我一个可行的代码示例。

您知道实现这项工作的方法以及代码的外观吗?任何帮助将不胜感激!

【问题讨论】:

    标签: flash swfobject


    【解决方案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" width="778" height="198" 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" width="778" height="198">
         <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" alt="Get Adobe Flash player" />
                        </a>
        <!--[if !IE]>-->
        </object>
        <!--<![endif]-->
     </object>             
    

    【讨论】:

    • 嗯,这是不同的行为,但它会加载 Flash,然后它会完全消失,我的浏览器页面中会出现白屏...
    • 我认为我们可能正在做两件不同的事情。我的是一个涉及上面代码的思想实验。我不确定您使用的是什么代码——也许您可以包含完整的代码?我修改了我的工作代码以符合 setTimeout 的想法。此外,这可能是 swfobject 1。
    【解决方案2】:

    确保您在响应中设置了 Cache 和 Expires 标头。我在对象标签中遇到了类似的问题,两次调用服务器。将 Expires 标头设置为在当前时间之后 5 秒会阻止第二次调用。 高温

    【讨论】:

    • 它没有为我解决问题
    【解决方案3】:

    这也可能是由于CDNs 配置不正确造成的,他们可能没有发送完整的内容或抛出 206 或其他 http 错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-04-06
      • 2019-09-08
      • 2011-10-23
      • 1970-01-01
      • 1970-01-01
      • 2023-02-07
      • 2014-08-30
      相关资源
      最近更新 更多