背景:因为博客那边的图片要导入到论坛相册,中间设计到展示博客主的小头像,当时想多没想就用上了 img标签,效果出来以后也没有发现网络请求,直到流量统计那边发现这个问题我才开始慢慢排查。最后才发现是img标签引起的。
代码:
<ul class="tk_info_l">
<li><atarget="_blank"><img src="#" alt="#"></img></a><aname="9" href="#"target="_blank"></a></li>
<li>相册:<a name="10"href="#" target="_blank"></a></li>
<li>时间:<spanclass="gray"></span>
<!--{/if}-->
</li>
</ul>
var obj= jQuery(".tk_info_l li");
obj.eq(0).find("a").eq(1).attr('href',data[i][19]);
obj.eq(0).find("a").eq(0).attr('href',data[i][19]);
obj.eq(0).find("a").eq(0).find("img").attr('src',data[i][18]);
obj.eq(0).find("a").eq(0).find("img").attr('alt',data[i][16]);
obj.eq(0).find("a").eq(0).find("img").attr('height',"40");
obj.eq(0).find("a").eq(0).find("img").attr('width',"40");
obj.eq(0).find("a").eq(0).find("img").attr('style',"margin:05px -15px 0;");
obj.eq(0).attr('style',"height:40px;");
修改后的效果
<li><atarget="_blank"></a><aname="9" href="#"target="_blank"></a></li>
var obj = jQuery(".tk_info_l li");
var img = '<img src="'+data[i][18]+'" alt='+data[i][16]+' height=40 width=40 style="margin:0 5px -15px 0;"'+'/>'+' 上传者:'+data[i][16];
obj.eq(0).find("a").eq(1).html(img);
以下是转帖别人的结论:
注: 1. 对于IE和firefox的2次请求, 两者请求的页面是不一样的. FF,safari,chrome: 请求的是被访问的文件 2. 对于embed标签,上面所描述的情况是在 type不为空的情况下, type为空时,FF请求1, IE根据type值不同情况不同. 3. 如果 以上的标签中 不包含 src=”” ,就不会发生二次请求. |
结论:img标签的src=""时,会引起浏览器再次访问"./"即当前目录,如果该目录下有default.aspx,index.aspx等IIS的默认文档,则默认文档会执行2次