浏览器对象主要用于访问和操纵浏览器窗口的行为和特性。
在BOM层次结构中window对象是最顶层的核心对象,可以直接使用window访问。所有下层对象都是上层对象的属性,所以访问下层对象的属性和访问对象的一般属性相同。
例如:访问document对象;
window.document.write("访问docment对象1<br>");
document.write("访问docment对象2<br>");
//由于window对象是顶层对象,访问下层对象时,可以不使用window标识符。
Window对象的属性和方法
(注:部分属性和方法为IE浏览器所有,或已弃用)
open(URL,name,features)方法的使用,其中feartures参数如下表:
特性 | 说明 |
---|---|
width=pixels,height=pixels | 窗口宽度、高度,以像素为单位 |
left=pixels,top=pixels | 窗口的x,y坐标,以像素为单位 |
resizable=yes/no/1/0 | 是否可调节窗口大小。默认是yes |
scrollbars=yes/no/1/0 | 是否显示滚动条。默认是yes |
titlebars=yes/no/1/0 | 是否显示标题栏。默认是yes |
location=yes/no/1/0 | 是否显示地址栏。默认是yes |
menubar=yes/no/1/0 | 是否显示菜单栏。默认是yes |
toolbar=yes/no/1/0 | 是否显示工具栏。默认是yes |
status=yes/no/1/0 | 是否显示状态栏。默认是yes |
//示例代码
<a href="javascript:void(0)" onclick="openNewWin()">打开新窗口</a>
<a href="javascript:void(0)" onclick="closeNewWin()">关闭新窗口</a>
<a href="javascript:void(0)" onclick="closeThis()">关闭本窗口</a>
<script>
var newWin=null;
function openNewWin(){
var _url="https://www.baidu.com/";
var name="百度官网";
var features="width=400,height=400,left=400,top=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no";
newWin=window.open(_url,name,features);
}
function closeNewWin(){
if(newWin!=null){
newWin.close();newWin=null;
}
}
function closeThis(){
window.close();
}
</script>
大写“Window”表示对象自身,小写"window"强调对Window对象的引用,下同。
Navigator对象的常用属性和方法
属性/方法 | 说明 |
---|---|
appCodeName | 返回浏览器的代码名,为了兼容性,现在都返回"Mozilla" |
appName | 返回浏览器的名称 |
appVersion | 返回浏览器的平台和版本信息 |
platform | 返回浏览器的操作系统平台 |
cpuClass | 返回浏览器系统的CPU等级 |
onLine | 返回指明系统是否处于联机模式的布尔值 |
cookieEnabled | 返回指明浏览器是否启用cookie的布尔值 |
userAgent | 返回由客户机发送给服务器的user-agent头部的值 |
javaEnabled() | 返回浏览器是否启用Java |
Screen对象的常用属性
属性 | 说明 |
---|---|
width、height | 分别返回屏幕的宽度、高度,以像素为单位,下同 |
availWidth、availHeight | 返回屏幕的可用宽度、高度 |
colorDepth | 返回屏幕的颜色深度 |
Location对象的常用属性和方法
属性/方法 | |
---|---|
href | 设置或返回完整的RUL |
protocol | 设置或返回URL中的协议名 |
hostname | 设置或返回URL中的主机名 |
host | 设置或返回URL中的主机部分,包括主机名和端口号 |
port | 设置或返回URL中的端口号 |
pathname | 设置或返回URL中的路径名 |
hash | 设置或返回URL中的锚点 |
search | 设置或返回URL中的 查询字符串,即从问号(?)开始的部分 |
assign(url) | 为当前窗口装载由url指定的文档 |
reload(force) | 重新装载当前文档。若参数force为false(默认),则可能装载缓存的页面;若参数为true,则表示从服务器重新装载 |
replace(url) | 在浏览器窗口装载由url指定的页面,并在历史列表中代表上一个网页的位置,从而使用户不能用“后退”按钮返回前一个文档 |
History对象的属性和方法
属性/方法 | 说明 |
---|---|
length | 返回历史列表的长度,即当前页面历史列表的URL的个数 |
back() | 使浏览器窗口装载历史列表中的上一个页面,相当于单击浏览器的“后退”按钮 |
forward() | 使浏览器窗口装载历史列表中的下一个页面,相当于单击浏览器的“前进”按钮 |
go(n) | 使浏览器窗口装载历史列表中的第n个页面,如果n是负数,则装载上n个页面 |
方法“history.back()”等同于“history.go(-1)”
Document对象的常用属性和方法
属性/方法 | 说明 |
---|---|
parentWindow | 返回当前页面文档所在窗口对象的引用 |
cookie | 设置返回与当前文档相关的所有cookie |
domain | 返回提供当前文档的服务器域名 |
lastModified | 返回当前文档的最后修改时间 |
title | 返回当前文档的标题,即由"< title>" 标记的文本 |
referrer | 返回将用户引入当前页面的位置URL。例如,单击一个页面进入当前页面 |
URL | 返回当前文档的完整URL |
open([type]) | 使用指定的MIME类型 (默认为"text/html")打开一个输出流。该方法将除去当前文档的内容,开始一个新文档。可以使用write()方法为新文档编写内容,最后必须用close()方法关闭输出流 |
close() | 关闭用open()方法打开的输出流,并强制显示所有缓存的输出内容 |
write() | 向文档写入HTML代码文本 |
writeln() | 与write()方法类似,该方法已经没有换行效果 |
当调用Document对象的open方法时,将清除浏览器窗口中的任何内容,即相当于浏览器由本地的"about:blank"URL指定的空白页,该页文档没有任何代码,甚至是最基本的结构代码"< html></ html>"也没有,所以open(),close()方法通常只用于新建窗口的document对象。