首页 新闻 搜索 专区 学院

我的页面有若干个img元素,当页面加载的时候,我获取到所有img元素,然后获取其src...

0
悬赏园豆:10 [已解决问题] 解决于 2011-11-17 15:42

我的页面有若干个img元素,当页面加载的时候,我获取到所有img元素,然后获取其src...结果发现src明明为空,但img.src的结果是当前网址. 为什么呢? 网上搜不到~~

问题补充:
<!--HTML关键代码-->
<img onerror="alert('error');" class="thumb_img" src="">
//js代码
var thumb = document.getElementsByClassName('thumb_img')[0];
alert(thumb.src); //结果不是 "" 而是当前网页地址,为什么



coder_wang的主页 coder_wang | 初学一级 | 园豆:193
提问于:2011-11-16 17:59
< >
分享
最佳答案
0

因为img的src属性总是规范成绝对地址的,比如

<img src="/images/1.jpg" />

然后实际上你alert的时候,这个img的src会被规范成 http://www.yoursite.com/images/1.jpg。所以你这里设置了一个空地址,就会被规范成你当前页面的地址了(因为浏览器认为这个src=""是一个相对地址)

收获园豆:10
水牛刀刀 | 大侠五级 |园豆:6350 | 2011-11-16 18:25

很有道理~~,那么请问我如何更好的判断这一img的src是否为""呢? 获取页面地址和它比较吗?

coder_wang | 园豆:193 (初学一级) | 2011-11-17 08:46

@coder_wang: 这么做理论上是可以的,因为你页面的地址不会同时刚好也是一个img的地址,所以不可能有img的src是你页面的地址的,如果有,说明img的src没有设置导致的。

水牛刀刀 | 园豆:6350 (大侠五级) | 2011-11-17 10:08
其他回答(4)
0

上代码吧

乱世文章 | 园豆:147 (初学一级) | 2011-11-16 18:01

好吧,如此简单的提问还需代码...

支持(0) 反对(0) coder_wang | 园豆:193 (初学一级) | 2011-11-16 18:07
0

http://www.blabla.cn/html_kb/html_kb_img_src_empty_reload.html

在img 对象的src 属性是空字符串("")的时候,浏览器认为这是一个缺省值,值的内容为当前网页的路径

喬喬AI | 园豆:996 (小虾三级) | 2011-11-16 20:13
0

顶·············

xueteng | 园豆:209 (菜鸟二级) | 2011-11-17 10:01
0

obj.getAttribute("src") 即可获得空值...  哎.JQ惯的

coder_wang | 园豆:193 (初学一级) | 2011-11-17 15:42
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册