js的location对象

location基础知识

BOM(浏览器对象模型)中最有用的对象之一就是location,它是window对象和document对象的属性。location对象表示载入窗口的URL,此外,它还可以解析URL:
href     设置或返回完整的 URL
protocol     设置或返回当前 URL 的协议,即双斜杠(//)之前的部分。
host     设置或返回主机名和当前 URL 的端口号。
hostname     设置或返回当前 URL 的主机名。
port     设置或返回当前 URL 的端口号。默认情况下,大多数URL没有端口信息(默认为80端口),所以该属性通常是空白的。像http://cardtest.ffan.com:8070/app/ffanbao/location.html这样的URL的port属性为8070.
pathname     设置或返回当前 URL 的路径部分。
hash     设置或返回从井号 (#) 开始的 URL(锚)。
search     设置或返回从问号 (?) 开始的 URL(查询部分)。
location.origin:协议名、主机名和端口号

例子:http://cardtest.ffan.com:8070/app/ffanbao/location.html?name=78&age=19#89

location.href是最常用的属性,用于获取或设置窗口的URL,改变该属性,就可以跳转到新的页面:

  1. <script type="text/javascript">
  2. location.href = "http://www.sunchis.com";    
  3. </script>

上面代码的作用是:打开页面后将会跳转到http://www.sunchis.com的页面。
assign()方法也可实现上述操作:

  1. <script type="text/javascript">
  2. location.assign("http://www.sunchis.com");
  3. </script>

如果不想让包含脚本的页面能从浏览器的历史记录中访问,replace()方法可以做到这一点。replace()方法所做的操作与assign()方法一样,但它多了一步操作,即从浏览器的历史记录中删除了包含脚本的页面,这样就不能通过浏览器的后退按钮和前进按钮来访问它了,assign()方法却可以通过后退按钮来访问上个页面。你可以自己测试一下这段关于replace()方法的代码:

  1. <html>
  2. <head>
  3. <title>不能访问此页面的历史页面</title>
  4. </head>
  5. <body>
  6. <p>测试一下效果,请等待一秒钟……</p>
  7. <p>然后点击浏览器的“后退按钮”,你会发现什么?</p>
  8. <script type="text/javascript">
  9. setTimeout(function(){
  10. location.replace("http://www.sunchis.com");
  11. },1000);
  12. </script>
  13. </body>
  14. </html>

location对象还有个reload()方法,可以重新载入当前页面。reload()方法有两种模式,即从浏览器的缓存中重载,或从服务器端重载。究竟采用哪种模式由该方法的参数决定。
false:从缓存中重新载入页面;
true:从服务器重新载入页面;
无参数:从缓存中载入页面,如果参数省略,默认值为false。

注意:
在reload()方法执行后,再其后面的代码可能被执行,也可能不被执行,这由网络延迟和系统资源因素决定。因此,最好把reload()的调用放在代码的最后一行。
文章的一开始就提到location是window对象和document对象的属性,因此,window.location和document.location是等价的,可以交互使用。

location.origin兼容IE  (IE11+才有origin属性)

    1. if (window["context"] == undefined) {
    2. if (!window.location.origin) {
    3. window.location.origin = window.location.protocol + "//" + window.location.hostname +
    4. (window.location.port ? ':' + window.location.port: '');
    5. }
    6. window["context"] = location.origin+"/V6.0";
    7. }

js的location对象的更多相关文章

  1. 5月15日上课笔记-js中 location对象的属性、document对象、js内置对象、Date事件对象、

    location的属性: host: 返回当前主机名和端口号 定时函数: setTimeout( ) setInterval() 二.document对象 getElementById(); 根据ID ...

  2. js 的Location对象

    Location对象 location用于获取或设置窗体的URL,并且可以用于解析URL. 语法: location.[属性|方法] location对象属性图示: location 对象属性: ha ...

  3. Js之Location对象

    Window对象的location属性引用的是Location对象,它表示该窗口中当前显示的文档的URL,并定义了方法来使窗口载入新的文档.Document对象的location属性也引用到Locat ...

  4. JS浏览器对象:window对象、History、Location对象、Screen对象

    一.JS浏览器对象-window 1.window对象 window对象是BOM的核心,window对象指当前的浏览器窗口 所有JavaScript全局对象.函数以及变量均自动成为window对象的成 ...

  5. 【2017-03-28】JS基础、windows对象、history对象、location对象

    一.JS基础 JS - javaScript 1.js功能: 1).进行数据的运算.2).控制浏览器的一些功能.3).控制元素(属性.内容.样式) js引用位置: 可以放在html页的任意位置. 推荐 ...

  6. js location对象

    location提供了与当前窗口中加载文档有关的信息.还提供了一些导航功能.它既是window对象的属性,又是document对象的属性,window.location与document.locati ...

  7. JS BOM对象 History对象 Location对象

    一.BOM对象 BOM(浏览器对象模型),可以对浏览器窗口进行访问和操作 window对象 所有浏览器都支持 window 对象. 概念上讲.一个html文档对应一个window对象. 功能上讲: 控 ...

  8. js location对象相关命令

    Location.href 返回整个当前url,若对其赋值:location.href="http://www.sina.com.cn"则跳转其urllocation.host 返 ...

  9. JS window对象 Location对象 location用于获取或设置窗体的URL,并且可以用于解析URL。 语法: location.[属性|方法]

    Location对象 location用于获取或设置窗体的URL,并且可以用于解析URL. 语法: location.[属性|方法] location对象属性图示: location 对象属性: lo ...

随机推荐

  1. 可以从CSS框架中借鉴到什么

    http://isux.tencent.com/css-framework.html http://isux.tencent.com/css-framework.html 现在很多人会使用 CSS 框 ...

  2. python接口自动化-有token的接口项目使用unittest框架设计

    获取token 在做接口自动化的时候,经常会遇到多个用例需要用同一个参数token,并且这些测试用例跨.py脚本了. 一般token只需要获取一次就行了,然后其它使用unittest框架的测试用例全部 ...

  3. Selenium加载Chrome/Firefox浏览器配置文件

    Selenium启动浏览器时,默认是打开一个新用户,不会加载原有的配置以及插件.但有些时候我们可能需要加载默认配置. 一.Chrome浏览器 1.在Chrome浏览器的地址栏输入:chrome://v ...

  4. mybatis自动映射和手动映射

    一对一查询 第一种方法: <!-- 查询所有订单信息 --> <select id="findOrdersList" resultType="cn.it ...

  5. 【Ajax 2】封装Ajax的核心对象:XMLHttpRequest对象

    导读:AJAX利用一个构建到所有现代浏览器内部的对象-XMLHttpRequest-来实现发送和接收HTTP请求与响应信息.那么,XMLHttpRequest对象是怎么创建和封装的呢? 一.简介 1. ...

  6. HDU 4641

    动态更新后缀自动机,每次不断依据当前添加的节点不断往前寻找父节点上字符串最多可出现的次数 这里为了减少运算,当父节点已经达到k次就不在往前寻找,因为之前的必然达到k次,也已经统计在内 #include ...

  7. JAVA自定义监听器的示例代码

    JAVA用户自定义事件监听完整例子 JAVA用户自定义事件监听完整例子- —sunfruit     很多介绍用户自定义事件都没有例子,或是例子不全,下面写了一个完整的例子,并写入了注释以便参考,完整 ...

  8. xth 砍树(codevs 1369)

    题目描述 Description 在一个凉爽的夏夜,xth 和 rabbit 来到花园里砍树.为啥米要砍树呢?是这样滴,小菜儿的儿子窄森要出生了.Xth这个做伯伯的自然要做点什么.于是他决定带着rab ...

  9. iOS 混合变换旋转 CGAffineTransform

    在ios 中, Core Graphics 提供了一系列的函数可以在一个变换的基础上做深层次的变换,如果做一个既要缩放又要旋转的变换,以下的方法比较实用. CGAffineTransformScale ...

  10. Tomcat可以实现Session共享方案

    说明:原来Tomcat也是可以实现Session共享的,这样大大减少的硬编码的实现,并且前面用Nginx分流时不用考虑Session的问题,因为是Web容器提供了Session共享的支持. 1.在每个 ...