Javascript中使用A标签获取当前目录的绝对路径方法

 更新时间:2015年03月02日 10:33:23   投稿:junjie  
这篇文章主要介绍了Javascript中使用A标签获取当前目录的绝对路径方法,本文讲解的方法比较特别,需要的朋友可以参考下

一谈到路径相关的问题,大家都会往window.location上想,确实这个对象提供了相当多的路径信息,其中常用的就包括:

1.location.href:当前页面的完整URL
2.location.pathname:当前URL中的路径名
3.location.hash:当前URL中的锚点
4.location.search:当前URL中的查询参数

然而,location没有一个属性能直接获得当前目录(不含文件名)的绝对路径。通过Google我发现了一些错误的方法,比如说把URL通过“/”分离成数组,把数组的最后一项去掉以后再连接成字符串。但如果URL中没有指定文件名,结果就大错特错了。

根据以往编码的经验,a元素的href属性总是会返回绝对路径,也就是说它具有把相对路径转成绝对路径的能力。使用下面的代码尝试了一下,果然成了:

复制代码 代码如下:

var a = document.createElement('a');
a.href = './';
alert(a.href);
a = null;

很不幸地,此方法在老旧的IE 6/7下无效,当执行alert(a.href)时,弹出的仍然是“./”。后来,我发现在Stackoverflow上也有人提出了这个问题,而解决方法也是很简单的,只要把a通过innerHTML注入就可以了:
复制代码 代码如下:

var div = document.createElement('div');
div.innerHTML = '<a href="./"></a>";
alert(div.firstChild.href);
div = null;

有人可能会问:为何不用正则表达式?我的答案是:要考虑有无文件名的情况、有无锚点的情况、有无查询参数的情况,这条正则表达式可能会挺复杂的。

相关文章

  • js 字符串反转(倒序)的几种方式总结

    js 字符串反转(倒序)的几种方式总结

    这篇文章主要介绍了js 字符串反转(倒序)的几种方式总结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • 正则中的回溯定义与用法分析【JS与java实现】

    正则中的回溯定义与用法分析【JS与java实现】

    这篇文章主要介绍了正则中的回溯定义与用法,结合实例形式分析了回溯的概念、功能并提供了JS与java实现方法,需要的朋友可以参考下
    2016-12-12
  • javascript实现html页面之间参数传递的四种方法实例分析

    javascript实现html页面之间参数传递的四种方法实例分析

    这篇文章主要介绍了javascript实现html页面之间参数传递的四种方法,结合实例形式较为详细的分析了JavaScript实现页面之间参数传递的常用技巧,需要的朋友可以参考下
    2015-12-12
  • JavaScript之自定义类型

    JavaScript之自定义类型

    在JavaScript中,创建一个具有自定义属性和方法的对象有很多种模式,下面一一进行介绍
    2012-05-05
  • JavaScript中剩余参数的使用详解

    JavaScript中剩余参数的使用详解

    JavaScript中的剩余参数一般使用在**赋值号右侧,或具有迭代属性的数组、函数和对象,这篇文章主要为大家介绍了JavaScript中剩余参数的具体应用,需要的可以参考下
    2023-11-11
  • 详解Bootstrap按钮

    详解Bootstrap按钮

    本文给大家介绍bootstrap按钮相关知识,包括按钮大小、按钮状态、按钮标签相关样式定义,对bootstrap按钮相关知识感兴趣的朋友一起学习吧
    2016-01-01
  • BootStrap selectpicker后台动态绑定数据

    BootStrap selectpicker后台动态绑定数据

    这篇文章主要介绍了BootStrap selectpicker后台动态绑定数据的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • js实现简单秒表走动的时钟特效

    js实现简单秒表走动的时钟特效

    这篇文章主要为大家详细介绍了js实现简单秒表走动的时钟特效,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2015-08-08
  • js 关键词高亮(根据ID/tag高亮关键字)案例介绍

    js 关键词高亮(根据ID/tag高亮关键字)案例介绍

    关键词高亮在开发中会带来很多的方便,关键词高亮包括:根据ID高亮关键字/根据Tag名高亮关键字等等,感兴趣的朋友可以了解下,希望本文对你有所帮助
    2013-01-01
  • JS获取当前日期时间并定时刷新示例

    JS获取当前日期时间并定时刷新示例

    这篇文章主要介绍了JS如何获取当前日期时间并执行定时刷新,示例代码如下,需要的朋友不要错过
    2014-06-06

最新评论