版权声明:本文为博主原创文章,未经博主允许欢迎乱转载,标好作者就可以了!感谢欣赏!觉得好,回个贴就行!
利用JavaScript获取当前页的URL,这个问题起来好像很复杂,如果第一次去想这个问题,很多人估计又在琢磨到底又是哪个神一般的Javascript函数。
其实不是,Javascript获取当前页的URL的函数就是我们经常用来重定向的window.location.href。
比如如下函数:
- <script>
- var url=window.location.href;
- var loc = url.substring(url.lastIndexOf('/')+1, url.length);
- alert("url="+url+",loc="+loc);
- </script>
如果当前页面的url为http://localhost:6666/myphp/mobile/pc1.php,那么其运行结果如下:
上面的函数同时展示如何获取当前页名称的做法。
获取利用window.location.href的变量获取整个url之后,要哪一部分的地址,利用substring,indexof等字符串处理函数对获取到的url进行处理,截取你想要的部分。
平时利用window.location.href做重定向,就是改变整个浏览器的url,
如果后面没有赋值,这就成了获取当前值的语句。
与document.getElementById("xx").value一样,你能够修改,就能够获取了。
当然,如果获取一些特定的值,比如当前的协议与端口,就不用截取字符串这么麻烦了。
直接利用window.location.port拿端口,window.location.protocol拿协议,window.location.search还能拿url问号后面的部分,当然也可以利用它们来改相应的值。
比如如下代码:
- alert("protocol:"+window.location.protocol+",port:"+window.location.port);
其运行结果如下:
补充:substring(start,stop)知识
语法
语法
stringObject.substring(start,stop)
返回值
一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。
说明
substring() 方法返回的子串包括 start 处的字符,但不包括 stop 处的字符。
如果参数 start 与 stop 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。如果 start 比 stop 大,那么该方法在提取子串之前会先交换这两个参数。