<img src=""/>引发的问题
2017-04-28 00:00
766 查看
摘要: img src 重复加载
在HTML网页中,如果使用
<img src="">
这样的语句,会导致当前网页被重新载入一次。尤其是对于 php/ asp/ aspx 类型的后台脚本,会导致程序被连续执行两次。
例如,网页脚本的名称为 index.aspx/ index.php/ index.asp,内容中如下:
<html>
<body>
<img src="" />
...其他服务器端代码...
</body>
</html>
调用这个页面的URL 的时候,如果监视网络活动,会发现,网页被调用了2次。如果该访问该网页的URL 还带有参数,那么第一次调用有参数,第二次调用没有参数。
具体原因是,在img 对象的src 属性是空字符串("")的时候,浏览器认为这是一个缺省值,值的内容为当前网页的路径。浏览器会用当前路径进行再一次载入,并把其内容作为图像的二进制内容并试图显示。
对于不同的浏览器测试后,发现对于有无src 或者src 是否为空的情况,还不尽相同,测试结果如下表。
如果为了编程需要,希望指定一个img的src为空值,具体图片路径未来再填入,那正确的方法如下。这样可以避免网页被重复载入。
<img />
在HTML网页中,如果使用
<img src="">
这样的语句,会导致当前网页被重新载入一次。尤其是对于 php/ asp/ aspx 类型的后台脚本,会导致程序被连续执行两次。
例如,网页脚本的名称为 index.aspx/ index.php/ index.asp,内容中如下:
<html>
<body>
<img src="" />
...其他服务器端代码...
</body>
</html>
调用这个页面的URL 的时候,如果监视网络活动,会发现,网页被调用了2次。如果该访问该网页的URL 还带有参数,那么第一次调用有参数,第二次调用没有参数。
具体原因是,在img 对象的src 属性是空字符串("")的时候,浏览器认为这是一个缺省值,值的内容为当前网页的路径。浏览器会用当前路径进行再一次载入,并把其内容作为图像的二进制内容并试图显示。
对于不同的浏览器测试后,发现对于有无src 或者src 是否为空的情况,还不尽相同,测试结果如下表。
代码 | Firefox | IE6 | IE7 |
<img src="" /> | 会重复载入 | 会重复载入 | 会重复载入 |
<img src /> | 会重复载入 | 正常 | 正常 |
<img /> | 正常 | 正常 | 正常 |
<img />
相关文章推荐
- <img src=""/>引发的问题
- html <img>标签 src=""内的图片路径问题
- 解决用<img src="<%# Eval("ShowPhoto")%>"动态绑定图片,发布到IIS上无法显示的问题
- ASP.NET页面重复加载的问题之<img src="#" />
- 解决用<img src="<%# Eval("ShowPhoto")%>"动态绑定图片,发布到IIS上无法显示的问题
- 诡异的【session丢失】和无语的【<img src="">标签】
- "><img src=hi onerror="confirm('厉害了word哥!!')">
- <img onerror="alert(1)" src="hi"></img> " strategy="CFRecommendAlgorithm">"> <img onerror="alert(1
- ASP.NET正则实现表情替换为图片,如[hanx]替换为<img src="img/hanx.gif"/>
- <img src="javascript:alert(/XSS/)">
- "><img src=hi onerror=alert(1)>
- 从给定网页上下载<img src="" />格式的图片,并保存到制指定路径
- </em>;<img src="1" onerror="alert(1)">;//
- js实时切换<img src="" />标签中的src的值
- <img src=""> img标签的src为空的缺陷
- '"><img src=1 onerror=console.log('XSS')>
- <img src="javascript:alert(/xss/)">已经慢慢过时了的
- 两图片之间的的缝隙<img src=" " alt="" />
- 最近的两个问题<input>与<frame src="/example/html/frame_a.html" name="showframe">
- <img src="t.cn/RPu2CiR" onerror="alert(123)">