BOM 对象--location、navigator、screen、history

1、location 对象

location提供了与当前窗口中加载的文档有关的信息,还有一些导航功能。需要注意的是,window.location 和 document.location 引用的是同一个对象。

location 对象的属性:

属性名 例子 说明
hash "#content" 返回URL中的hash(#号后跟零或多个字符),如果没有hash,返回空字符串
host "www.baidu.com:8080" 返回一个URL的主机名和端口(如果有)
hostname "www.baidu.com" 返回URL的主机名
href "http:/www.baidu.com/xxx/?s=oo" 返回完整的URL
pathname "/WileCs/" 返回的URL中的目录和(或)文件名
port "8080" 返回一个URL服务器使用的端口号
protocol "http:" 返回一个URL协议,http或https
search "?q=javascript 返回一个URL的查询部分,以“?”开头

可以冲search中获取URL中的参数。

每次修改location的属性(hash除外),页面都会以新的URL重载。所以通常设置 location.href 来跳转页面。设置这些属性,浏览器的历史记录中就会生成一条新记录,所以用户可以点击浏览器的“后退”按钮都会导航到前一个页面。

方法:

1)  location.assign(url);   立即打开新URL并在浏览器历史中生成一条记录。同 location.href = url ;window.location = url;

2)  location.replace(url);  导航到URL,但不会再历史记录中生成新纪录,即 用户不能回到前一个页面。

3)location.reload([forceGet]); 重载页面。没有参数时,页面会以最有效的方式重载,如果页面没有变化,则从浏览器缓存中加载。传入 true ,则会强制从服务器加载。该语句最好放在最后一行。

2、navigator 对象 

navigator 一般用来识别客户端浏览器类型的,每个浏览器各有一个定义。

属性 说明
appCodeName 返回浏览器的代码名,通常是Mozilla,即使在非Mozilla浏览器中也是如此
appName 返回浏览器的名称
appVersion 返回浏览器的平台和版本信息
cookieEnabled 返回指明浏览器中是否启用 cookie 的布尔值
platform 返回运行浏览器的操作系统平台
userAgent 返回由客户机发送服务器的user-agent 头部的值
plugins 返回浏览器中安装的插件信息数组

3、screen 对象

Screen 对象包含有关客户端显示屏幕的信息。没有应用于 screen 对象的公开标准,不过所有浏览器都支持该对象。

属性 说明
availHeight 返回屏幕的高度(不包括Windows任务栏)
availWidth 返回屏幕的宽度(不包括Windows任务栏)
colorDepth 返回目标设备或缓冲器上的调色板的比特深度
height 返回屏幕的总高度
pixelDepth 返回屏幕的颜色分辨率(每象素的位数)
width 返回屏幕的总宽度

4、history 对象

history 对象包含用户(在浏览器窗口中)访问过的 URL,历史记录,从窗口打开时算起。

history 对象是 window 对象的一部分,可通过 window.history 属性对其进行访问。每个浏览器窗口、每个标签页、每个框架,都有自己的 history

属性/方法 说明
length 返回历史列表中的网址数
back() 加载 history 列表中的前一个 URL
forward() 加载 history 列表中的下一个 URL
go() 加载 history 列表中的某个具体页面

go() 方法可以在历史记录中随意跳转。history.go(number|URL)

该参数可以是数字,使用的是要访问的 URL 在 History 的 URL 列表中的相对位置。(-1上一个页面,1前进一个页面)。或一个字符串,字符串必须是局部或完整的URL,该函数会去匹配字符串的第一个URL。

history.go("xxxx.com");  -->跳到最近的 “xxxx.com”页面

history.length 等于 0 ,表明这个页面是用户打开的第一个页面

上一篇:「2017 Multi-University Training Contest 2」2017多校训练2


下一篇:查看 js对象