img 的 onload事件是在图片正确载入后执行的.
我们通常先给图片一个src='loading.gif',然后通过onload事件去加载实际图片.
比如onload="src=GetImage()"加载完成后图片会改变.
此时不会因为src里重新放了一个新的图片而引发onloading事件
而下边这种情况就会了..
当初始src不存在的时候,如src="x",此时去执行onerror事件,在onerr事件里设置src为加载失败的图片路径.
当设置完成之后...会引发onload事件,
onload事件加载完图片后,会再次引发onload事件...这样无限循环.
为什么同样是onload事件给图片src赋值,一个不会重复引发,一个会???
虽然加了obj.onload=null之后解决了,但是很好奇为什么会这样?麻烦知道的朋友告诉我一下.
附代码如下:
<script type="text/javascript">
function GetImage(obj) {
obj.onload = null;
return "http://www.bjhhsc.com/UpLoadImage/文化石/888X463/20141103194832_bc2681bb-62db-4711-8ffe-36150d96a585.jpg";
function GetLoading() {
return "http://192.168.1.8:82/Image/test2.jpg";
</script>
<img src="s" onload="src=GetImage(this);" onerror="src=GetLoading();" alt="tips.." />