前阵子给人做一个产品展示页面,需要放置大量的本地或外来图片,由于旧的数据中有一些无效的图片路径,导致网页迟迟不能载入,写了大段的JS代码去验证图片路径的有效性,但由于外部图片有可能会因为服务器、网络等原因,仍然有可能打不开而导致页面半天才能全部载入,因此需要对图片做一下容错处理:<img src="图片路径" onerror="this.src='error.gif'" border="0" align="absmiddle">,这样一来,如果图片不能正常载入,则会自动显示error.gif,省得留着一个大大的XX在那!
![](http://www.goalercn.com/attachments/month_0506/96xb_error.gif)
1
引用内容:
2
var strImageUrl=document.form1.info_img.value;
3
if(strImageUrl.length>0)
4
{
5
var RegExpImageUrl = strImageUrl.match(/^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/);
6
var ImageType = strImageUrl.substr(strImageUrl.length-4,4).toLowerCase();
7
if(RegExpImageUrl == null)
8
{
9
alert("Error:图片地址格式不对");
10
document.form1.info_img.focus();
11
return false;
12
}
13
if((ImageType != ".jpg") && (ImageType != ".gif") && (ImageType != ".bmp") && (ImageType != ".png"))
14
{
15
alert("Error:您的地址链接到的不是一个图片吧?!");
16
document.form1.info_img.focus();
17
return false;
18
}
19
}
![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/None.gif)
3
![](/Images/OutliningIndicators/None.gif)
4
![](/Images/OutliningIndicators/None.gif)
5
![](/Images/OutliningIndicators/None.gif)
6
![](/Images/OutliningIndicators/None.gif)
7
![](/Images/OutliningIndicators/None.gif)
8
![](/Images/OutliningIndicators/None.gif)
9
![](/Images/OutliningIndicators/None.gif)
10
![](/Images/OutliningIndicators/None.gif)
11
![](/Images/OutliningIndicators/None.gif)
12
![](/Images/OutliningIndicators/None.gif)
13
![](/Images/OutliningIndicators/None.gif)
14
![](/Images/OutliningIndicators/None.gif)
15
![](/Images/OutliningIndicators/None.gif)
16
![](/Images/OutliningIndicators/None.gif)
17
![](/Images/OutliningIndicators/None.gif)
18
![](/Images/OutliningIndicators/None.gif)
19
![](/Images/OutliningIndicators/None.gif)