我们一直在对一些嵌入式Flash小部件进行一些测试。
虽然我知道 onerror事件,但当附加到对象标记时,对浏览器不友好,我们会为Internet Explorer用户调用此处理程序
虽然我非常确定在无法加载swf时会调用此处理程序(如404,410,网络错误等),是否在任何其他情况下调用?
由于这些小部件不是我们自己的,是否有可能从嵌入式Flash文件中“抛出”一个onerror事件?如果是这样,这可能就是我们看到这一点的原因。
我想我也应该把它放进去,是否有可能获得有关在调用onerror事件时调用它的原因的任何其他信息?
总结一下,我们正在寻找的是知道天气可以安全地假设如果一个onerror事件是从一个对象标签触发的,那是因为swf没有成功加载而被触发,因此我们可以尝试从另一个网址加载它。是的,我们只是不想尝试重新加载swf,如果onerror因某些其他原因被解雇,那么swf无法加载。
一些其他信息:
我们正在使用嵌入闪光灯的flash satay方法。并简单地将onerror添加到object标签,如下所示:
<object .... onerror="ourAjaxLogFunction()">
一如既往,谢天谢地。
答案 0 :(得分:2)
onerror
documentation说(强调我的):
要调用,会导致出现以下错误之一:
运行时脚本错误,例如无效的对象引用或 安全违规。
下载对象(例如图像)时出错。
Internet Explorer 9的新增功能。发生错误 在获取媒体数据时。
也许您的Flash内容正在尝试跨越某种安全边界。如果是这种情况,尝试从其他来源重新加载它将无济于事。我建议您对传递给处理程序的错误消息进行进一步调查。