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

《Javascript权威指南》十六学习笔记:BOM资源---BOM基本应用

2015-08-18 11:31 393 查看
BOM基本应用包括:管理浏览器历史记录、得到处理和解决浏览器的信息。本文介绍了这些应用程序。

一、浏览历史管理

1、history对象的方法和属性

History 对象包括用户(在浏览器窗体中)訪问过的 URL,是 window 对象的一部分,可通过 window.history 属性对其进行訪问。没有应用于 History 对象的公开标准。只是全部浏览器都支持该对象。

length属性:返回浏览器历史列表中的URl数量。

是"前进“和”后退“两个button之下包括的地址数的总和。

back([num]):载入 history 列表中的前一个 URL。參数num表示后退的地址步数,若未定义num,效果等价于点击后退button或调用 history.go(-1)。

forward():载入 history 列表中的下一个 URL。该方法的效果等价于点击前进button或调用 history.go(1)。

go([location]):载入history列表中的location位置的页面,location能够是字符串或者整数。若是字符串,表示是要訪问历史列表中的某个 URL。或 URL 的子串。若是整数。表示是要訪问的 URL 在 History 的 URL 列表中的相对位置,正数是前进,负数是后退,0表示刷新当前网页。与location.reload()等效

2、HTML 5 BOM新增功能

HTML 5 BOM新增了两个方法和一个属性:

window.history.pushState(data,title[,url]):加入新的浏览历史项。data定义历史记录的数据。title定义历史记录的标题。URL定义历史记录的URL地址。触发popstate事件。

window.history.replaceState(data,title[,url]):更新当前历史浏览项。參数同上。触发popstate事件。

state属性:返回上述两个方法加入的信息。

二、解析地址

location对象描写叙述的是一个窗体对象打开的URL地址。使用window.location能够返回一个location对象(window能够省略)。表示当前窗体的地址,能够用alert(location)获取;若要表示某一个窗体的地址,则要用”窗体对象名.location“获取URL。

var newWin = window.open("http://www.baidu.com","_target");

alert(newWin.location);

1、location对象的属性:



2、location对象的方法



HTML5新增一个resolveURL(sURL):将相对的URL转为绝对的URL

document.write("书签名称: "+location.hash+"<br/>");
document.write("主机全称: "+location.host+"<br/>");
document.write("主机名称: "+location.hostname+"<br/>");
document.write("路径名称: "+location.pathname+"<br/>");
document.write("连接端口名称: "+location.port+"<br/>");
document.write("协议名称: "+location.protocol+"<br/>");
document.write("查询字符串: "+location.search+"<br/>");


结果:



三、获取浏览器信息

Navigator 对象包括有关浏览器的信息,其对象实例唯一,能够用 Window 对象的 navigator 属性来引用它。没有应用于 navigator 对象的公开标准,只是全部浏览器都支持该对象。

1、遍历Navigator对象成员

使用window.navigator属性能够返回一个Navigator对象。使用for..in循环能够检測

for(var i in window.navigator)
{
document.write(i + "==="+window.navigator[i]+"<br/>");
}


在不同的浏览器中执行结果不同。在google中结果例如以下



2、Navigator对象属性:



3、Navigator对象的方法



四、非标准应用---screen对象

Screen 对象包括有关client显示屏幕的信息。每一个 Window 对象的 screen 属性都引用一个 Screen 对象。

没有应用于 screen 对象的公开标准,只是全部浏览器都支持该对象。其属性:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: