无
onerror 事件不是 W3C 规范中的标准事件,且只有 IE 支持 OBJECT 元素的 onerror 事件。
若在 OBJECT 元素上使用 onerror 事件,则该事件只在 IE 中可能被触发。
如使用了 ActiveX,在其 OBJECT 元素上使用了 onerror 事件以便在 ActiveX 插件无法正常运行时显示错误提示信息,而由于非 IE 浏览器不支持此事件且也不支持 ActiveX
技术,则此时在这些浏览器中也无法显示出错误提示信息。如:
IE6 IE7 IE8 |
---|
W3C HTML4.01 规范第 18.2.3 节 介绍了 HTML 中的内在事件(Intrinsic events),其中并没有 onerror 事件。
onerror 事件为 IE 专有,可以作用于 INPUT、IMG、OBJECT、SCRIPT、STYLE 等元素,这些元素对象加载错误时将触发此事件。
更多参见 MSDN:onerror Event。
分析以下代码:
<object classid="1" onerror="alert('err')"></object>
上面代码中 OBJECT 元素的 classid 属性设置了一个错误的 clsid 值,则仅在IE中 onerror 事件被触发,弹出了提示框,其他浏览器均没有任何反应。
避免使用非标准的 onerror 事件。对于 OBJECT 元素可以通过对客户端浏览器类型进行判断,来达到有好地提示错误的效果。
操作系统版本: | Windows 7 Ultimate build 7600 |
---|---|
浏览器版本: |
IE6
IE7 IE8 Firefox 3.6.3 Chrome 5.0.375.17 dev Safari 4.0.5 Opera 10.51 |
测试页面: | object_onerror.html |
本文更新时间: | 2010-07-16 |
OBJECT onerror event 错误 事件