1. src
//html //scriptvar script = document.getElementsByTagName('script')[0]; //标准浏览器返回 http://www.ooxx.com/ooxx.js 即返回绝对路径//IE67,src的字符串为什么则返回什么,这里是ooxx.jsalert(script.src); //无兼容问题,均返回src所填字符串,这里为ooxx.jsalert(script.getAttribute('src'));
2. href
//htmlooxx //scriptvar a = document.getElementsByTagName('a')[0]; //无兼容问题,均返回href的绝对路径,形如http://www.ooxx.com/ooxx.htmlalert(a.href); //标准浏览器返回相对路径,即ooxx.html//IE67返回绝对路径,形如http://www.ooxx.com/ooxx.htmlalert(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时,返回绝对路径,详细参数查看
3. 想获取a中href的相对路径,用 a.getAttribute('href',2) ,依然是利用IE的专属参数另其字符串方式返回所要的相对路径。
4. 想获取a中href的绝对路径,用a.href即可。
OVER!