【js学习笔记-069】--- window 之定位和导航

来源:互联网 发布:西南大学网络继续教育 编辑:程序博客网 时间:2024/06/12 20:53

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

Document.location属性也引用到Location对象

window.location===document.location //总是返回true

Document对象也有一个URL属性,是文档首次载入后保存该文档的URL的静态字符串。如果要定义到文档中片段标识符如#table-of-contents,Location对象会做相应的更新,而document.URL 属性不会改变。

解析URL

window对象的location属性引用的是Location对象,它表示该窗口中当前显示的文档的URL。

Location对象的href属性是一个字符串,它包含了URL的完整文本

Location对象的toString()方法返回href属性的值,因此在会隐匿调用toString()的情况下,可以使用location代替location.href。

其它属性还有:

属性

描述

IE

F

O

hash

设置或返回从井号 (#) 开始的 URL(锚)。

4

1

9

host

设置或返回主机名和当前 URL 的端口号。

4

1

9

hostname

设置或返回当前 URL 的主机名。

4

1

9

href

设置或返回完整的 URL。

4

1

9

pathname

设置或返回当前 URL 的路径部分。

4

1

9

port

设置或返回当前 URL 的端口号。

4

1

9

protocol

设置或返回当前 URL 的协议。

4

1

9

search

设置或返回从问号 (?) 开始的 URL(查询部分)。

4

1

9

 

下面定义一个可以提取url参数的方法

/**

这个函数是用来解析来自URL的查询中的name=value参数对 它将name=value对存储在一个对象的属性中,并返回该对象

*/

function urlArgs(query){

     var args= {};

     var pairs = query.split("&");

     for(var i=0;i<pairs.length;i++){

         var pos = pairs[i].indexOf('=');;

         if(pos == -1)continue;

         var name = pairs[i].substring(0,pos);

         var value = pairs[i].substring(pos+1);

         value = decodeURIComponent(value);

         args[name] = value;

     }

    return args;

}


载入新的文档

assign()

 可以使窗口载入并显示你指定的URL中的文档

replace()

和assign方法一样,但在载入新文档之前会从浏览历史中把当前文档删除。如果脚本无条件的载入新文档,replace方法可能是比assign方法更好的选择。否则,后退按钮会把浏览器带回到原始文档

reload()

浏览器重新载入当前文档

 

使浏览器跳转到新页面的一种更传统的方法是直接把新的url赋值给location属性。

可以是绝对路径,也可以是相对路径(相对于当前页面位置)还可以是页面的一个锚点。

 

注意,location对象的URL分解属性是可写的,对它们重新赋值会改变URL的位置,并且导致浏览器载入一个新的文档。如果是改变的是hash值,则在当前文档中进行跳转,如:

location.search = "?page="+(pagenum+1);//载入下一个页面


原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 怀孕后特别不爱吃水果怎么办 宝宝吃了无比滴怎么办 婴儿上火怎么办吃什么可以去火 肚子胀怎么办最快的方法 40天婴儿拉水怎么办 8个月宝宝坐不稳怎么办 宝宝段奶不吃奶粉怎么办 3个月宝宝头睡偏了怎么办 2个月婴儿抱着睡怎么办 两个半月的宝宝睡眠少怎么办 七个月宝宝不愿意坐怎么办 一个多月的宝宝老是哭闹怎么办 宝宝头老往后仰怎么办 8个月宝宝不会爬怎么办 孩子个头长得慢怎么办 宝宝个头长得慢怎么办 婴儿个头长得慢怎么办 11个月宝宝认生怎么办 3个月宝宝认人怎么办 3个月的宝宝认生怎么办 两个月的宝宝睡觉一惊一惊怎么办 六个月宝宝不喜欢喝水怎么办 三岁宝宝尿多怎么办 一岁的宝宝尿少怎么办 一岁宝宝尿黄怎么办 三岁宝宝尿黄怎么办 5个月宝宝认生怎么办 3岁宝宝怕生胆小怎么办 2岁宝宝怕生胆小怎么办 1岁半宝宝认生怎么办 宝宝认人一直哭怎么办 七个月宝宝认人怎么办 一个月宝宝认人怎么办 2个多月宝宝认人怎么办 婴儿认人一直哭怎么办 六个月宝宝认人怎么办 十一个月宝宝断奶后辅食怎么办 6个月宝宝不会坐怎么办 7个月宝宝坐不住怎么办 三个月宝宝白天闹觉怎么办 3个月宝宝不追声怎么办