您的位置:首页 > Web前端 > JavaScript

JavaScript_Location对象

2013-05-23 18:26 246 查看
Location对象是预先定义的JavaScript对象,可以通过Window对象的location属性访问,即window.location

1.Location对象的属性及方法:



Location对象的每个属性都描述了URL的不同特性,通常情况下一个URL会有的格式:协议//主机:端口/路径名#哈希标识?搜索条件

如图:



这些部分是满足下列需求的:

“协议”是URL的起始部分,直到包含到第一个冒号。

“主机”描述了主机和域名,或者一个网络主机的IP地址

“端口”描述了服务器用于通讯的通讯端口

“路径名”描述了主机上虚拟目录

“哈希标识”描述了URL中的锚名称,包括哈希掩码(#)。此属性只应用于Http的URL

“搜索条件”描述了该URL中的任何查询信息,包括问号。此属性只应用于Http的URL.“搜索条件”字符串包含变量和值的配对;每对之间用一个“&”连接

2.location的属性

(1)location.href

href是location最重要的属性,用于获取当前文档的URL或设置URL。如果设置URL,将导航到新的页面,如:



(2)location.hash

通过location.hash可以用来获取和设置页面的标签值.

对于ajax页面来说,一般用一个页面来处理所有的事务,假设有一个ajax页面中,包含一个以上的Tab的页面,当在此ajax页面中浏览不同Tabs的的信息时,如果程序不做处理,地址栏的URL是不会改变的,这就意味着,当时无论收藏此URL,还是粘贴后发送给别人,这个URL都是不能准确定位到你想浏览的内容,此时,我们可以通过设置location.hash的值来解决这个问题。

举例说明:

第一种情况 :未设置window.location.hash的值,在浏览b和c页面的内容时,URL地址没有任何变化,这就意味着此地址不能精确定位到你想要的内容





第二种情况 :设置window.location.hash的值,以便精确定位URL





代码如下:





3.location的方法

通过下边的两种方法中的任何一种来使浏览器从服务器上下载 (Load) 页面:

reload() - 促使浏览器重新下载当前的页面,也就是“刷新”当前页面了。

replace(URL) - 促使浏览器根据 URL 参数中给出的地址 (URL) 下载页面,同时在当前浏览器存储的历史记录 (即所浏览过的页面的列表) 中使用新的地址(即此方法中的 URL 参数) 覆盖当前的页面。

使用 replace() 方法意味着用户将不能通过按 “返回” 按钮回到前边浏览过的那个页面,但这并不是说用户完全不能回到原来的所有页面,他们只不过是无法回到被 replace() 方法替换的那一个页面 (注意:只是被替换的那一个页面)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: