获取src和href的一些问题

1. src

 


 

//html
<script type="text/jvascript" src="ooxx.js"></script>
              
//script
var script = document.getElementsByTagName('script')[0];
              
//标准浏览器返回 http://www.ooxx.com/ooxx.js 即返回绝对路径
//IE67,src的字符串为什么则返回什么,这里是ooxx.js
alert(script.src);
              
//无兼容问题,均返回src所填字符串,这里为ooxx.js
alert(script.getAttribute('src'));

 

 

2. href


 

//html
<a href="ooxx.html">ooxx</a>
            
//script
var a = document.getElementsByTagName('a')[0];
            
//无兼容问题,均返回href的绝对路径,形如http://www.ooxx.com/ooxx.html
alert(a.href);
            
//标准浏览器返回相对路径,即ooxx.html
//IE67返回绝对路径,形如http://www.ooxx.com/ooxx.html
alert(a.getAttribute('href');

 

3. 总结


 

1. 想获取script中src的相对路径,用 script.getAttribute('src')

 

2. 想获取script中src的绝对路径,如下代码

var src = script.hasAttribute ? script.src : script.getAttribute('src',4);

因为 IE67 不支持hasAttribute方法,故可用其判断区分;再加上IE对getAttribute支持第2个参数,参数为4时,返回绝对路径,详细参数查看http://msdn.microsoft.com/en-us/library/ms536429(VS.85).aspx 

 

 

3. 想获取a中href的相对路径,用 a.getAttribute('href',2) ,依然是利用IE的专属参数另其字符串方式返回所要的相对路径。

 

4. 想获取a中href的绝对路径,用a.href即可。

 

 

 

OVER!

 

 

 

posted @ 2012-10-02 11:31  肥杜  阅读(4899)  评论(0编辑  收藏  举报