[英]Page load in IE, page includes flash banner
所以这就是问题所在。
我有一个由两个swf组成的flash横幅,它们通过LocalConnection相互通信,还调用外部JS函数。 (我还没有弄清楚这是重要的还是仅仅是一枚硬币。)
我也有一个外部JS文件,该文件告诉横幅广告通过flashVars做什么。 并具有横幅调用事件的功能。
可以想象,除了IE之外,其他所有方法都可以正常工作。
在IE中,我遇到了这个问题:我尝试加载一个测试页面,该页面包含很多图片和厚厚的背景(因此需要一段时间才能加载)。 然后我放置横幅,在所有这些内容之前都添加了javascript。 像这样:
有时在重新加载时通常不会出现一些图片。 虽然所有文本出现。
我确实尝试通过脚本进行挖掘,但是由于它不是我的脚本,因此证明有点困难,最后我得出一个结论,即使我不喜欢它的某些部分,也没有明显的问题。
FireBug和Chrome,Safari,Opera调试器不会显示任何类型的错误。
现在作为最后的手段,我将此添加到了我的JS文件中
window.onload = function()
{
alert('The page has loaded completely');
};
结果是,当我看到所有图片时,我会看到此消息,而当我不看到时,我就不会看到。 等待图片加载无济于事。
我也找到了这个主题: window.onload()在IE 8中未启动
哪一个谈到了类似的问题,所以如果有人指定导致该问题的插件会很好呢? 引用: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');
但是当弹出另一个警报时,我没有任何时间单击此按钮(单击“确定”)。 这是警报的正常现象吗? 我应该补充说,许多警报都在横幅调用的函数中。
更新2:
我进一步隔离了该问题,我完全停止了从Flash到JS函数的所有调用(首先我尝试将它们替换为alert(“ hello world”);这对加载问题没有帮助)。
现在,当flash不调用JS时,页面加载就可以了。 当然,我需要闪光灯才能调用外部函数。
无论如何,新问题:从flash调用的javascript可以使IE认为所有内容都已加载并且可以停止,就是这样的事情:
clean your room (and two seconds later)
now brush your teeth
result: the room is half clean but the teeth are
我可能会补充说,无论页面上加载了什么,总会加载一些东西:文本,将来图片的空格,但这可能只是巧合,除此之外,对于已加载和未加载的内容根本没有任何系统。
--------------------------->发现答案谢谢)))对我的问题进行投票,这是答案专家! Flash中使用的功能即
getURL("javascript: ...","");
是什么实际上阻止了页面的加载! 嗯,而不是这个,最好使用ExternalInterface(); 我要指出的是,我们在AS3.0中谈论的是AS 2.0,毫无疑问应该使用ExternalInterface,因为getURL现在是navigationTo或smthg。
感谢编写此AS的人意识到问题所在=)
只需从上方复制anwser即可解决问题
Flash中使用的功能即
getURL(“ javascript:...”,“”); 是什么实际上阻止了页面的加载! 嗯,而不是这个,最好使用ExternalInterface(); 我要指出的是,我们在AS3.0中谈论的是AS 2.0,毫无疑问应该使用ExternalInterface,因为getURL现在是navigationTo或smthg。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.