onerror 事件
JavaScript基础 2022-06-08 11:59:40小码哥的IT人生shichen
onerror 事件
实例
如果加载图像时发生错误,则执行 JavaScript:
<img src="image.gif" onerror="myFunction()">
完整实例:
<!DOCTYPE html>
<html>
<body>
<img src="image.gif" onerror="myFunction()">
<p>如果加载图像时发生错误,则会触发一个函数。该函数会显示带文本的警告框。
在本例中,我们引用了一个不存在的图像,因此发生了 onerror 事件。</p>
<script>
function myFunction() {
alert('The image could not be loaded.');
}
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
定义和用法
如果在加载外部文件(例如文档或图像)时发生错误,则会触发 onerror 事件。
提示:当用于音频/视频媒体时,当媒体加载过程受到某种干扰时发生的相关事件是:
浏览器支持
事件 | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
onerror | 支持 | 支持 | 支持 | 支持 | 支持 |
语法
在 HTML 中:
<element onerror="myScript">
完整实例:
<!DOCTYPE html>
<html>
<body>
<p>本例演示如何将 "onerror" 事件分配给 img 元素。</p>
<img src="image.gif" onerror="myFunction()">
<p id="demo"></p>
<script>
function myFunction() {
document.getElementById("demo").innerHTML = "The image could not be loaded.";
}
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
在 JavaScript 中:
object.onerror = function(){myScript};
完整实例:
<!DOCTYPE html>
<html>
<body>
<p>本例使用 HTML DOM 将 "onerror" 事件分配给 img 元素。</p>
<img id="myImg" src="image.gif">
<p id="demo"></p>
<script>
document.getElementById("myImg").onerror = function() {myFunction()};
function myFunction() {
document.getElementById("demo").innerHTML = "The image could not be loaded.";
}
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
在 JavaScript 中,使用 addEventListener() 方法:
object.addEventListener("error", myScript);
完整实例:
<!DOCTYPE html>
<html>
<body>
<p>本例使用 addEventListener() 方法将 "error" 事件附加到 img 元素。</p>
<img id="myImg" src="image.gif">
<p id="demo"></p>
<script>
document.getElementById("myImg").addEventListener("error", myFunction);
function myFunction() {
document.getElementById("demo").innerHTML = "The image could not be loaded.";
}
</script>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
注释:Internet Explorer 8 或更早的版本不支持 addEventListener() 方法。