2011-08-01 153 views
2

所以问题在这里。在IE中加载页面,页面包含Flash横幅

我有一个flash横幅,由两个swf组成,它们通过LocalConnection互相通信,并且还调用外部JS函数。 (我还没有想出这是重要的还是只是一个共同的。)

我也有一个外部的JS文件,它告诉横幅通过flashVars做什么。并具有横幅呼吁事件的功能。

正如你可以想象,除IE之外,这一切都可以工作。

在IE我expirience这个问题:我试图加载一个测试页,其中有很多的图片和沉重的背景(所以它需要一段时间加载)。我放置了横幅,在所有内容之前添加了一个JavaScript。事情是这样的:

http://pastebin.com/nnTuPPhN

有时,通常在重新加载一些图片就是不出现。所有文字都会出现。

我确实尝试了挖掘脚本,但由于它不是我的脚本,所以证明它有点困难,最后我得出结论,即使我不喜欢它的某些部分,也没有明显的它的问题。

FireBug和Chrome,Safari,Opera调试器显示没有任何错误。

现在,作为最后的手段我已将此添加到我的JS文件

window.onload = function() 
{ 
    alert('The page has loaded completely'); 
}; 

的结果是,当我看到所有的照片,我看到这个消息的时候,我不,我不。这无助于等待图片加载。

我也发现了这个话题: window.onload() is not firing with IE 8 in first shot

其中谈到了类似的问题,所以如果有人指定了插件可能导致此这将是很好? QUOTE:其中一个IE插件创建这个问题后,禁用其正常工作。感谢您的时间和答案:)

只要它不是Flash插件=)))

我检查Flash插件的网页上这样说:

var ad_checkPlugin = function(){ 
    // From SWFObject v2.2 <http://code.google.com/p/swfobject/> 

    if (typeof navigator.plugins != "undefined" && typeof navigator.plugins["Shockwave Flash"] == "object") 
    { 
     d = navigator.plugins["Shockwave Flash"].description; 
     return (d && !(typeof navigator.mimeTypes != "undefined" && navigator.mimeTypes["application/x-shockwave-flash"] && !navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin)) 
    } 

    else if (typeof window.ActiveXObject != "undefined") 
    { 
     try 
     { 
      var d = new window.ActiveXObject("ShockwaveFlash.ShockwaveFlash").GetVariable("$version"); 
      // new window.ActiveXObject(...) will return null if ActiveX is disabled 
      return d?true:false; 
     } 
     catch(e) 
     { 
      return false; 
     } 
    } 
} 

还有是另一种在Ie中导致相同问题的方式,所以我想这不是插件检查的问题。

如果你告诉我一些可能导致这些问题的事情,我会很高兴,如果你们要求的话,我也可以加上脚本。

如果你告诉我具体的事情,我会更开心=)),如果你要说脚本中存在问题,我不会同意或不同意我已经发现并没有问题,浏览器也没有问题。但它一定在那里,因为它不起作用。

更新:我也有提醒每一个地方在我现在的JS,现在我看到的是:在FF比如有时我看到警报

alert('The page has loaded completely'); 

但我没有留下任何时候点击这个一个(点击确定),当另一个警报弹出。这是警报正常的事情吗?我应该补充说,许多警报都是由横幅调用的。

UPDATE NO2:

我甚至更加孤立的问题,我停了下来,从闪光灯JS功能在所有(任何电话首先,我试图与警报,以取代他们(“世界你好”);未帮助加载问题)。

现在,当闪存不调用JS的页面加载就好了。当然,我需要闪光灯来调用外部功能。

反正新的问题:可能的JavaScript从Flash调用使IE认为这一切被加载并可以停止,那就是它可以是这样的:

clean your room (and two seconds later) 

now brush your teeth 

result: the room is half clean but the teeth are 

我想补充一点,无论负载在页面上,有些东西总是加载:文本,未来图片的空间,但这可能只是一种互动,除此之外,没有系统根本没有任何系统,也没有系统加载。

---------------------------> ANWSER FOUND Thanks)))用于投票我的问题,这里是anwser伙计们!闪存中使用的功能,即

getURL("javascript: ...",""); 

是什么实际上停止加载页面!嗯,而不是这个,最好使用ExternalInterface();我将指出我们在AS3.0中讨论AS 2.0时,毫无疑问应该使用ExternalInterface,因为getURL现在是navigateTo或smthg。

感谢谁写了这个,实现了什么问题的家伙=)

+0

我想帮忙,但我不确定问题是什么。问题改变了吗?如果是这样,那是什么?你有一个演示页面(工作原型),我可以用来帮助排除故障? – Jacksonkr

+0

演示页面,在这里=)对不起,长期的问题...... http://banners.adfox.ru/110729/adfox/155750/testpage_moda.html这足以阻止IE加载,问题仍然是为什么它doesn'我只是做了一些assumtion看到最后两个更新 – Olga

+0

问题解决了!=) – Olga

回答

0

只是从上面所以这个问题就解决了

功能闪光灯即

使用复制anwser getURL(“javascript:...”,“”);是什么实际上停止从 加载页面!嗯,而不是这个,最好使用ExternalInterface(); 我会指出我们在AS3.0中谈论的AS 2.0没有 问题,即应该使用ExternalInterface,因为getURL现在是 navigateTo或smthg。