如何捕获 iframe 内的 img 标记返回的 404(未找到)错误
How to capture 404 (not found) error returned by an img tag which is inside an iframe
考虑我有一个带有src的iframe标签。iframe src 属于同一域。没有跨域。
如果 iframe 文档具有返回"未找到"错误的图像标记。我应该如何在我的页面上的javascript中捕获此错误。我正在尝试这样做。但是控制台中除了图像错误之外什么都没有。
document.body.onload=function(){
if(document.getElementById('myiframe')){
var y = document.getElementById('myiframe').contentWindow || document.getElementById('myiframe').contentDocument;
var z= y.document.getElementsByTagName('img');
for(var i=0; i<z.length; i++){
console.log(z[i]);
z[i].onerror= function(){
console.log('here');
}
}
}
}
可以使用 Image Complete 属性来测试它是否已加载:
if(document.getElementById("myImg").complete){
alert("Image is loaded correctly !!!");
} else alert("An error occured while loading Image !!!");
或者可以使用 new Image()
构造函数及其onerror()
方法:
var image = new Image();
image.onerror = function () {
console.error("Cannot load image");
//do something else...
}
image.src = "path/image.jpg";
这是原始答案。
您可以在 iframe 中捕获图像失败,并从 iframe 调用父级的一个函数
$('img').error(function(){parent.imageNotLoaded()})
相关文章:
- CKFinder 3为所选文件返回错误的URL
- 从我的控制器返回一个不同于200的代码以触发ajax错误,这被认为是一种好的做法吗
- AngularJS错误:提供程序必须从$get工厂方法返回值
- 用于查询错误转换的角度资源返回列表
- 如何解决“;错误所请求的URL返回500-内部服务器错误”;
- WebView返回错误的window.innerHeight
- Javascript表单验证:表单在错误返回时提交:
- 谷歌地图上的常量错误返回maxZoomService.getMaxZoomAtLatLng()
- Jquery .ajax POST 函数错误返回 asp.net MVC.
- happy 不会从 Boom 错误返回数据属性
- 操作结果在 ajax 调用中作为错误返回
- 我得到了错误“返回绑定”.PBKDF2(密码、盐、迭代、keylen、回调);^ TypeError: Not a bu
- 节点解析错误:返回时意外的令牌
- Bluebird承诺库的结果作为错误返回
- Jquery, php ajax post 500内部服务器错误返回
- 未定义的索引问题和错误返回
- 未从json文件中导入数据:Unhandled rejection错误返回
- Jquery错误返回bool值
- 表单提交后重新加载页面,尽管没有验证和错误返回
- 使用POST方法的AJAX函数会创建以下错误.错误:返回状态码414请求uri太大