在HTML网页中,若是使用 php
<img src=""> html
这样的语句,会致使当前网页被从新载入一次。尤为是对于 php/ asp/ aspx 类型的后台脚本,会致使程序被连续执行两次。 编程
例如,网页脚本的名称为 index.aspx/ index.php/ index.asp,内容中以下: 浏览器
<html> 服务器
<body> 网络
<img src="" /> 测试
...其余服务器端代码... spa
</body> htm
</html> 对象
调用这个页面的URL 的时候,若是监视网络活动,会发现,网页被调用了2次。若是该访问该网页的URL 还带有参数,那么第一次调用有参数,第二次调用没有参数。
具体缘由是,在img 对象的src 属性是空字符串("")的时候,浏览器认为这是一个缺省值,值的内容为当前网页的路径。浏览器会用当前路径进行再一次载入,并把其内容做为图像的二进制内容并试图显示。
对于不一样的浏览器测试后,发现对于有无src 或者src 是否为空的状况,还不尽相同,测试结果以下表。
代码 | Firefox | IE6 | IE7 |
<img src="" /> | 会重复载入 | 会重复载入 | 会重复载入 |
<img src /> | 会重复载入 | 正常 | 正常 |
<img /> | 正常 | 正常 | 正常 |
若是为了编程须要,但愿指定一个img的src为空值,具体图片路径将来再填入,那正确的方法以下。这样能够避免网页被重复载入。
<img />