js 判断窗口是否已经打开了url_通过js获得当前页面路由参数的方法

通过js获得当前页面路由参数,是一个常用的方法,即使是静态的html页面,也可以借此获得传来的参数,达到动态页面一般的效果。

window.location

我们需要用到的就是window.location的几个属性,下面从这个简单的测试代码中可以看到详细的用法:

建立一个htm文件,先设置一个全局样式,为的是清晰地显示文字

下面是js代码部分

保存代码到一个页面比如1.htm,我们需要在本地启动一个模拟的web服务器,比如使用vscode的GoLive插件,在本例中,它启用的默认web地址是 http://127.0.0.1:5500 ,在其对应的根目录下建立js目录,1.htm放在其中,然后我访问类似这样的地址即可看到页面:

http://127.0.0.1:5500/js/1.htm

这是一个普通的静态页面地址,我们可以带上一些参数,形成这样的地址:

http://127.0.0.1:5500/js/1.htm?id=7&do=ok#first

这是个比较完整的url,他带有了协议,端口,路径,参数,还有锚点,已经可以满足所有动态页面的应用,我们得到这个结果:

aac7d79ff356aa4351e951131e7f61f6.png

我们可以看到,所有的参数都被解析出来了!

注:当然你也可以直接打开浏览器访问页面1.htm,而无需启动模拟的web服务器。显示的协议是file://开头的。但是路径编码后会比较长不方便看,仅此而已。

总结一下:

window.location.href

获取完整的 URL:

http://127.0.0.1:5500/js/1.htm?id=7&do=ok#first

window.location.protocol

获取 URL 的协议类型:

http:

window.location.host

获取网址和端口号:

127.0.0.1:5500

window.location.pathname

获取/开头的带路径的文件名:

/js/1.htm

window.location.search

获取文件名问号后面的部分(含问号)

?id=7&do=ok

window.location.hash

获取 URL 最后#号后的部分(含#号)

#first

window.location.port

获取 URL 的端口号。

5500

以上就是js所能获得的url参数了。方法简单而用法无穷:

c59f96f9402cf1a91055b0ef45472a74.png

我们可以通过获取这些属性,来判断页面状态,做出相应的动作或者交互响应。

我们也可以通过写入新的数据而使这些属性发生改变,此时页面就会跳转到新的url页面去了!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值