是什么触发对象标签的onerror事件处理程序?

what fires the onerror event handler for object tags in ie?

本文关键字:事件处理 程序 onerror 触发对象 标签 是什么      更新时间:2023-09-26

我们一直在对一些嵌入的flash小部件做一些测试。

虽然我知道onerror事件,当附加到对象标签不是很跨浏览器友好,我们得到这个处理程序调用相当多的internet explorer用户。

虽然我很确定这个处理程序将在无法加载SWF时被调用(如404、410、网络错误等),但它在任何其他情况下都被调用吗?

由于这些小部件不是我们自己的,是否有可能从嵌入的flash文件中"抛出"一个onerror事件?如果是这样,这可能就是我们看到这个的原因。

我想我应该把这个也扔进去,是否有可能得到任何额外的信息,什么原因导致onerror事件被调用时,它被调用?

总之,我们想知道的是,如果onerror事件是从一个对象标签触发的,那么它是由于swf没有成功加载而触发的,因此我们可以尝试从另一个url加载它。是的,我们只是不想尝试重新加载swf,如果onerror被触发了一些其他的原因,然后swf加载失败。

一些附加信息:

我们使用flash satay嵌入flash的方法。并简单地将onerror添加到object标签中,如下所示:

<object .... onerror="ourAjaxLogFunction()">

onerror的文档说(强调我的):

调用时,引起以下错误之一:

  • 运行时脚本错误,如无效的对象引用或安全违反 .

  • 下载对象(如图片)时出错

  • ie9新功能。发生错误

也许你的Flash内容正试图越过某种安全边界。如果是这种情况,尝试从另一个源重新加载它是没有帮助的。我建议您对传递给处理程序的错误消息进行进一步的调查。