我在image标签上有一个onerror处理程序,用于在找不到远程图像时处理切换。
问题是对于某些破碎的远程图像,它不起作用。
http://a3.twimg.com/profile_images/522455109/calvin-and-hobbessm_normal.jpg
<img onerror="this.src='/images/pic_not_found.png'" src="http://a3.twimg.com/profile_images/522455109/calvin-and-hobbessm_normal.jpg">
下图: 1)找到远程图像时,2)未找到远程图像(未触发错误),3)未找到远程图像(触发错误)
答案 0 :(得分:5)
这不是一个破碎的链接。
twimg.com
实际上会返回一张包含您请求的网址名称的图片。
只需点击图片链接即可。你看到的不是文字,而是图像。
<强>更新强>
以下是一些适用于所有浏览器的代码 它做了一些基本的特征检测。
function handle( elem, img, state )
{
if ((typeof(elem.onerror) === 'function' && state === 'fail')
|| (elem.width === 0)
)
{
elem.src = img;
}
}
它同时使用onload
和onerror
,但需要在javascript中定义的函数来处理这种情况。