首页 > 编程笔记 > JavaScript笔记
JS location对象的使用
location 对象包含了浏览器当前显示的文档的 URL 信息。当 location 对象调用 href 属性设置 URL 时,可使浏览器重定向到该 URL。location 对象是 window 对象的一个对象类型的属性,因而可以使用 window.location 来引用它,使用时也可以省略 window。
需注意的 document 对象也有一个 location 属性,而且 document.location 也包含了当前文档的 URL 信息。尽管 window.location 和 document.location 代表的意思差不多,但两者还是存在一些区别:window.location 中的 location 本身是一个对象,它可以省略 window 直接使用;而 document.location 中的 location 只是一个属性,必须通过 document 来访问它。
下面来看看 location 对象的一些常用属性和方法。
完整的 URL 包括了不同的组成部分。上述属性中,href 属性存放的是当前文档完整的 URL,其他属性则分别描述了 URL 的各个部分。URL 的结构如图 1 所示。
图 1:URL 的结构示意图
【例 1】location 对象的使用。
图 2:location 对象的应用
当单击“查看当前页面的URL”按钮时将弹出图 3 所示的对话框;
图 3:使用 location 对象获取 URL
当单击“加载新文档”按钮时,页面将跳转到 baidu 网页;当单击“重新加载当前文档”按钮时,将重新加载当前页面。
需注意的 document 对象也有一个 location 属性,而且 document.location 也包含了当前文档的 URL 信息。尽管 window.location 和 document.location 代表的意思差不多,但两者还是存在一些区别:window.location 中的 location 本身是一个对象,它可以省略 window 直接使用;而 document.location 中的 location 只是一个属性,必须通过 document 来访问它。
下面来看看 location 对象的一些常用属性和方法。
1. location对象属性
location 对象的常用属性见表 1。属性 | 描述 |
---|---|
hash | 设置或返回从井号(#)开始的URL (锚) |
host | 设置或返回主机名和当前 URL 的端口号 |
hostname | 设置或返回当前 URL 的主机名 |
href | 设置或返回完整的 URL |
pathname | 设置或返回当前 URL 的路径部分 |
port | 设置或返回当前 URL 的端口号 |
protocol | 设置或返回当前 URL 的协议 |
search | 设置或返回从问号(?)开始的 URL (查询部分) |
完整的 URL 包括了不同的组成部分。上述属性中,href 属性存放的是当前文档完整的 URL,其他属性则分别描述了 URL 的各个部分。URL 的结构如图 1 所示。
图 1:URL 的结构示意图
2. location对象方法
location对象的常用方法见表 2。方法 | 描述 |
---|---|
assign() | 加载新的文档 |
reload() | 重新加载当前文档 |
replace() | 用新的文档替换当前文档,且无需为它创建一个新的历史记录 |
3. 访问location对象的属性和方法的方式
访问 location 对象的属性和方法的方式如下:
[window.]location.属性
[window.]location.方法(参数1,参数2,…)
【例 1】location 对象的使用。
<!doctype html> <html> <head> <meta charset="utf-8"> <title>location对象的使用</title> <script> function loadNewDoc(){ window.location.assign("http://www.baidu.com"); } function reloadDoc(){ window.location.reload(); } function getDocUrl(){ alert("当前页面的URL是:"+window.location.href); } </script> </head> <body> <input type="button" value="加载新文档" onClick="loadNewDoc()"/> <input type="button" value="重新加载当前文档" onClick="reloadDoc()"/> <input type="button" value="查看当前页面的URL" onClick="getDocUrl()"/> </body> </html>上述脚本代码分别调用了 location 的 assign()、reload() 和 href 属性实现加载 baidu 网页、重新加载当前页面和获取当前页面的 URL。上述代码在 Chrome 浏览器中的运行结果如图 2 所示。
图 2:location 对象的应用
图 3:使用 location 对象获取 URL
当单击“加载新文档”按钮时,页面将跳转到 baidu 网页;当单击“重新加载当前文档”按钮时,将重新加载当前页面。
所有教程
- C语言入门
- C语言编译器
- C语言项目案例
- 数据结构
- C++
- STL
- C++11
- socket
- GCC
- GDB
- Makefile
- OpenCV
- Qt教程
- Unity 3D
- UE4
- 游戏引擎
- Python
- Python并发编程
- TensorFlow
- Django
- NumPy
- Linux
- Shell
- Java教程
- 设计模式
- Java Swing
- Servlet
- JSP教程
- Struts2
- Maven
- Spring
- Spring MVC
- Spring Boot
- Spring Cloud
- Hibernate
- Mybatis
- MySQL教程
- MySQL函数
- NoSQL
- Redis
- MongoDB
- HBase
- Go语言
- C#
- MATLAB
- JavaScript
- Bootstrap
- HTML
- CSS教程
- PHP
- 汇编语言
- TCP/IP
- vi命令
- Android教程
- 区块链
- Docker
- 大数据
- 云计算