Javascript 检查页面上的损坏图像

Javascript 检查页面上的损坏图像,javascript,brokenimage,Javascript,Brokenimage,如何找到页面上所有损坏的图像? 我需要找到页面上所有损坏的图像。但问题是,我的脚本是从另一个域在客户页面上动态下载的。当我在页面上运行脚本时,我不知道图像是否已经下载或仍在下载过程中。我做了以下工作: if (!img.complete) { img.onerror = function () { // broken image } } else { if (img.naturalHeight === 0 && img.naturalW

如何找到页面上所有损坏的图像? 我需要找到页面上所有损坏的图像。但问题是,我的脚本是从另一个域在客户页面上动态下载的。当我在页面上运行脚本时,我不知道图像是否已经下载或仍在下载过程中。我做了以下工作:

if (!img.complete) {
    img.onerror = function () { 
        // broken image 
    }
} else {
    if (img.naturalHeight === 0 && img.naturalWidth === 0) {
        // broken image 
    }
}

但对于img.complete,IE不仅在图像仍在下载过程中返回'false',即使图像已损坏也返回'false'。因此,我需要区分这两种情况。

你说的“我没有直接访问页面”是什么意思?我的脚本是下载到页面上的,我想你应该能够通过等待所有内容加载后再测试(使用window.onload)来区分这两种情况这个解决方案不适合我的情况。即使在onload事件之后也可以加载标记和图像(特别是当客户端使用react或angular框架时)。