转自:
http://www.goalercn.com/blogview.asp?logID=41
前阵子给人做一个产品展示页面,需要放置大量的本地或外来图片,由于旧的数据中有一些无效的图片路径,导致网页迟迟不能载入,写了大段的JS代码去验证图片路径的有效性,但由于外部图片有可能会因为服务器、网络等原因,仍然有可能打不开而导致页面半天才能全部载入,因此需要对图片做一下容错处理:<img src="图片路径" onerror="this.src='error.gif'" border="0" align="absmiddle">,这样一来,如果图片不能正常载入,则会自动显示error.gif,省得留着一个大大的XX在那!
前阵子给人做一个产品展示页面,需要放置大量的本地或外来图片,由于旧的数据中有一些无效的图片路径,导致网页迟迟不能载入,写了大段的JS代码去验证图片路径的有效性,但由于外部图片有可能会因为服务器、网络等原因,仍然有可能打不开而导致页面半天才能全部载入,因此需要对图片做一下容错处理:<img src="图片路径" onerror="this.src='error.gif'" border="0" align="absmiddle">,这样一来,如果图片不能正常载入,则会自动显示error.gif,省得留着一个大大的XX在那!
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
}
引用内容: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
}
博主在做产品展示页面时,因旧数据存在无效图片路径,网页载入缓慢。虽用JS代码验证路径有效性,但外部图片仍可能因服务器、网络问题打不开。于是采用容错处理,若图片不能正常载入,自动显示error.gif,还给出了图片地址格式和类型的验证代码。
188

被折叠的 条评论
为什么被折叠?



