JavaScript——BOM编程


一、BOM是什么?

BOM(Browser Object Model)是指浏览器对象模型,可以对浏览器窗口进行访问和操作。使用BOM,开发者可以移动窗口、改变状态栏中的文本以及执行其他与页面内容不直接相关的动作。

二、BOM对象

1.BOM对象模型

在这里插入图片描述下述两个对象有特殊双重身份:document对象既是BOM顶级对象window的一个属性,也是DOM模型中的顶级对象:location对象既是window对象的属性,同时也是document对象的属性。表2-1列出了BOM上两层对象的描述及用途。
表2-1:

属性描述及用途
window窗体对象,表示浏览器中打开的窗口。若HTML,文档包含框架(frame),浏览器会为每个框架创建一个额外的window对象,是BOM的顶层对象
document每个载入浏览器的HTML文档。利用document可以实现对HTML页面中的所有元素进行访问
navigator浏览器对象,包含有关浏览器的信息,例如,浏览器名称、厂商、版本等
screen客户端显示器对象,包含有关显示浏览器屏幕的信息,例如,高度、宽度、色彩等。运用这些信息可以优化显示效果,实现用户的显示效果
history历史对象。记录在浏览器窗口中访问过的URL
location浏览器窗口中当前文档的URL
frames窗口中所有命名的框架,是window对象的数组

2.window对象

BOM的操作入口为window对象,即浏览器下的全局对象

  • 所有浏览器都支持window对象。他表示浏览器窗口
  • 一个html文档对应一个window对象
  • 控制浏览器窗口的
  • window对象不需要创建对象,直接使用即可
  • 所有JavaScript全局对象、函数以及变量均自动成为window对象的成员

如alert()、prompt()、setInterval()、setTimeout()等方法,都是挂载在window对象上的全局方法

3.window对象常用方法

window.open()
打开一个新窗口
window.close()
关闭当前窗口

参数说明
URL要在新窗口中显示的文档的URL
name声明新窗口的名称
param (width、height、left、top)新窗口的高度及宽度;新窗口的距顶部及左侧的位置

4.window对象常用属性

属性说明
name返回窗口的名称
innerHeight、innerWidth返回窗口的内部宽高
outerHeight、outerWidth返回窗口的外部宽高
screenX、screenY、screenLeft、screenTop返回窗口的左上角在屏幕上的位置

注意:大多数修改窗口大小或位置的方法,目前已被主流浏览器禁用,对非window.open方法打开的窗口不能使用。
window.onload
用于在网页加载完毕后立刻执行的操作
使用方法:window.onload=函数名*不加()或window.onload=匿名函数

5.location对象

操作当前窗口的地址信息

属性说明
href返回当前窗口的完整url地址,可通过修改值达到页面跳转的目的
host返回当前窗口的主机名,如www.aaa.com/bbb.html的主机名为www.aaa.com
pathname返回资源路径地址,即主机名后面的部分
port返回端口,常见端口如HTTP端口为80,HTTPS端口为443
方法说明
reload()重载当前页面

6.navigator对象

运行当前代码的客户端浏览器的相关信息

属性说明
userAgent用户代理信息,包含操作系统、浏览器内核、浏览器版本、CPU类型等
onLine是否连接了因特网
cookieEnabled是否启用cookie
language浏览器主语言

7.screen对象

属性说明
width、height屏幕宽高
availWidth、availHeight屏幕可用宽高(不包括任务栏)

8.history对象

当前窗口的浏览历史记录

属性说明
length历史纪录的数目
方法说明
back()后退一页
forward()前进一页
go()跳转到指定页数,参数为负代表后退,参数为正代表前进

9.frames框架

如果页面中包含框架,则每个框架都拥有自己的window对象,并且保存在frames集合中

<iframe src = "1.html" name = "frame1"></iframe>

在父页面中,可通过window.frames[“frame1”]访问子页面的window对象(需等frame加载完毕)
在子页面中,可通过window.parent访问父页面的window对象(需等frame加载完毕)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值