对于一个img元素,我们想获取它的src属性时可以有两种方式:
1、xxx.getAttribute("src")
2、直接通过xxx.src获取属性值
在src的属性值为相对路径时,这两者的结果在不同浏览器会有一些不同哦。
以此为例:
var img=document.getElementById(‘logo‘); alert("src:"+img.src); // iE7-: src:http://localhost/test/images/logo.png // iE8+ Chrome Firefox: src:http://localhost/test/images/logo.png alert("getAttribute:"+img.getAttribute("src")); // iE7-: src:http://localhost/test/images/logo.png // iE8+ Chrome Firefox:getAttribute:images/logo.png
那么如何让IE低版本的getAttribute("src")方法也返回相对路径呢,这里就要用到IE特有的getAttribute方法的第二个参数:
img.getAttribute("src",2)
除了img的src属性外,a标签的href属性也存在此问题,同样设置第二个参数为2即可。
我们看下微软对第二个参数的解释:http://technet.microsoft.com/zh-cn/library/aa752280
0:默认值。搜索属性时大小写不敏感
1:搜索属性时大小写敏感,大小和小写字母必须完全匹配。
2:返回BSTR形式的属性值?此标识对事件属性无效。(不知道第一句的具体意义,但是设置属性为2可以用来返回原始值)
4:返回完整路径URL地址。只对URL属性有效。(参数为4的情况,我还没有找到使用它的场景。。。)
时间: 2024-11-03 21:54:35