Javascript 导致Flash简介动画冻结的脚本

Javascript 导致Flash简介动画冻结的脚本,javascript,flash,Javascript,Flash,当我的Flash网站加载时,它会在初始动画的中途冻结2-3秒,然后继续。这显然不太好,我也不知道是什么原因造成的。我认为这是index.html中的脚本之一,并尝试了各种方法来纠正它-我做错了什么 <!DOCTYPE html> <html lang="en"> <head> <title>company name</title> . . . <link href="style.css" rel="styl

当我的Flash网站加载时,它会在初始动画的中途冻结2-3秒,然后继续。这显然不太好,我也不知道是什么原因造成的。我认为这是index.html中的脚本之一,并尝试了各种方法来纠正它-我做错了什么

<!DOCTYPE html>
<html lang="en">
<head>
<title>company name</title>
    .
    .
    .
<link href="style.css" rel="stylesheet" type="text/css" />

<script type="text/javascript" src="js/flashobject.js"></script>

<!--[if lt IE 7]>
<link href="ie6.css" rel="stylesheet" type="text/css" />
<![endif]-->
</head>

<body>
<header>
    <hgroup>
    <h1>company</h1>
    <h2>company</h2>
    </hgroup>
</header>

<div id="container">    
    <div id="head">
        <div class="aligncenter"><a href="http://www.adobe.com/go/EN_US-H-GET-FLASH">
            <img src="http://www.adobe.com/images/shared/download_buttons/get_adobe_flash_player.png" alt="" /></a>
        </div>
    </div>                      
</div>
    <div class="g-plus" data-href="https://plus.google.com/100925740920754223119?rel=publisher" data-width="170" data-height="69" data-theme="light">   

</body>

<!-- Flash -->
<script type="text/javascript">
  var fo = new FlashObject("main_v10.swf", "head", "100%", "100%", "8", "");
  fo.addParam("quality", "high");
  fo.addParam("allowFullScreen", "true");
  fo.write("head");
</script>

<!-- Hello Bar -->
<script type="text/javascript" src="//www.hellobar.com/hellobar.js"></script>
<script type="text/javascript">
new HelloBar(39040,52484);
</script>

<!-- GPlus -->
<script type="text/javascript">
window.___gcfg = {lang: 'en'};
(function() 
{var po = document.createElement("script");
po.type = "text/javascript"; po.async = true;po.src = "https://apis.google.com/js/plusone.js";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(po, s);
})();</script>

<!-- Google -->
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-xxxxxxxx-1']);
_gaq.push(['_setSiteSpeedSampleRate', 10]);
_gaq.push(['_trackPageview']);
(function init() {
 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') +  '.google-analytics.com/ga.js';
 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga,s);
 })();
  window.onload = init;
 </script>
 </html>

公司名称
.
.
.
公司
公司
var fo=新的FlashObject(“main_v10.swf”、“head”、“100%””、“100%””、“8%”);
fo.addParam(“质量”、“高”);
fo.addParam(“allowFullScreen”、“true”);
fo.写入(“头”);
新海洛巴(3904052484);
窗口。uuuugcfg={lang:'en'};
(功能()
{var po=document.createElement(“脚本”);
po.type=“text/javascript”;po.async=true;po.src=”https://apis.google.com/js/plusone.js";
var s=document.getElementsByTagName(“脚本”)[0];
s、 parentNode.insertBefore(po,s);
})();
var _gaq=_gaq | |[];
_gaq.push([''设置帐户','UA-xxxxxxxx-1']);
_gaq.push(“设置速度采样器”,10]);
_gaq.push([''u trackPageview']);
(函数init(){
var ga=document.createElement('script');ga.type='text/javascript';ga.async=true;
ga.src=('https:'==document.location.protocol?'https://ssl' : 'http://www“)+”.google analytics.com/ga.js';
var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(ga,s);
})();
window.onload=init;

这不是一个好问题。它对于您的服务器、计算机、操作系统、浏览器和internet连接来说太具体了,不能成为一个有一般答案的问题。但以下是我的结果:

我正在Windows上使用Firefox(最新版本)

在我运行的测试中,G+和Adobe图标正在缓慢加载。我想你可以把Adobe图标放在你的本地服务器上。除此之外,您正在对HeloBar和G+进行一些潜在的缓慢调用,因此考虑在某种延迟之后添加这些链接(使用jQuery或类似的)。 此外,我过去也遇到过谷歌分析加载速度慢的问题。这似乎也复制了HelloBar的一些功能,因此您可能需要更仔细地查看是否需要两个跟踪系统


为了更准确地找到问题,您可以使用@jimw建议的方法,或者使用Firefox插件Firebug(使用“Net”选项卡的“All”按钮来获取加载时间的图片)

尝试删除Hello Bar部分,看看它是否改变了某些内容。 如果是这样,则链接的文件中的脚本速度慢得离谱,或者脚本所在的服务器速度慢得离谱。由于脚本加载和执行是阻塞的,所以它可能是冻结的根源

在这种情况下,您可以尝试在脚本标记上使用defer或async属性,但随后需要重写

new HelloBar(39040,52484);
作为


这样,当您加载脚本时,HelloBar会被覆盖,“循环”停止,您的脚本会被正确的值调用。

您是否尝试过将SWF嵌入空白html页面以查看错误是否仍然发生,如果仍然发生,则是SWF导致了问题。是的,您尝试过这个方法,并且运行良好。Thxim希望你的在线,是否可以给我发送动画,如果不可以,你能告诉我文件大小有多大,如果动画由按钮或互动组成,给我这些信息可以让我更好地测试它。我已经将您的脚本上传到了一个测试服务器,您可以在这里看到www.gamezslave.net/test/blank.htmlIf如果您查看Chrome开发工具中的“时间线”选项卡,您应该可以看到暂停期间发生了什么。谢谢@jimw-没有想到使用它是一个网站,因此,我想知道index.html页面上的代码/标记中是否存在导致问题的错误。这个问题完全合理!我将查看Hello条形码并将其删除,以查看是否有任何差异。ThxI没有说问题。不合理,只是不好。除非有人能够复制您的环境,否则无法回答这个问题,而这几乎是不可能的。但是,就其本身而言,您并不是在描述一个“错误”,而是一个“特性”。也就是说,对远程网站的任何呼叫都可能很慢;任何繁重的Javascript(例如jQuery)负载也会出现。最好的建议是使用Firefox的Firebug插件或谷歌Chrome。如果您不清楚调试结果,请发布这些结果,有人可以帮助您。
function HelloBar( ) { window.setTimeout( function ( a, b ) { new HelloBar( a, b ); }, 100 ); }
new HelloBar(39040,52484);