【JavaScript编程】BOM 对象


浏览器对象模型 (BOM)


浏览器对象模型(Browser Object Model):由于现代浏览器已经(几乎)实现了 JavaScript 交互性方面的相同方法和属性,因此常被认为是 BOM 的方法和属性。


一、Window 对象


所有 JavaScript 全局对象、函数以及变量均自动成为 window 对象的成员:

  • 全局变量是 window 对象的属性。

  • 全局函数是 window 对象的方法。

  • 甚至 HTML DOM 的 document 也是 window 对象的属性之一:


尺寸

有三种方法能够确定浏览器窗口的尺寸:

属性描述
window.innerHeight浏览器窗口的内部高度(包括滚动条)
window.innerWidth浏览器窗口的内部宽度(包括滚动条)
ie8及以下
document.documentElement.clientHeight
document.documentElement.clientWidth
或者
document.body.clientHeight
document.body.clientWidth

实用的 JavaScript 方案(涵盖所有浏览器):

var w = window.innerWidth
	|| document.documentElement.clientWidth
	|| document.body.clientWidth;

var h = window.innerHeight
	|| document.documentElement.clientHeight
	|| document.body.clientHeight;

常用属性
属性描述
window.parent返回父窗口。
window.top返回最顶层的父窗口。
window.opener返回对创建此窗口的窗口的引用。
window.self返回对当前窗口的引用。等价于 Window 属性。
window.screen对 Screen 对象的只读引用。见下
window.history对 History 对象的只读引用。见下
window.location用于窗口或框架的 Location 对象。见下
window.navigator对 Navigator 对象的只读引用。见下
window.localStorage在浏览器中存储 key/value 对。参考 LocalStorage 对象
window.document对 Document 对象的只读引用。参考 Document 对象

常用方法
方法描述
window.open()打开新窗口
window.close()关闭当前窗口
window.moveTo()移动当前窗口
window.resizeTo()调整当前窗口的尺寸
window.alert()显示带有一段消息和一个确认按钮的警告框。见下
window.confirm()显示带有一段消息以及确认按钮和取消按钮的对话框。见下
window.prompt()显示可提示用户输入的对话框。见下
window.setInterval()按照指定的周期(以毫秒计)来调用函数或计算表达式。见下
window.setTimeout()在指定的毫秒数后调用函数或计算表达式。见下

二、Screen 对象


常用属性
属性描述
screen.availWidth可用的屏幕宽度
screen.availHeight可用的屏幕高度

三、Location 对象


window.location 对象用于获得当前页面的地址 (URL),并把浏览器重定向到新的页面。


常用属性
属性描述
location.hash设置或返回一个URL的锚部分(从 # 号开始的部分)。如:#part
location.href设置或返回当前页面的 URL。如:https://blog.csdn.net/guang_s/article/details/94458654
location.host设置或返回主机名及端口号。如:blog.csdn.net
location.hostname设置或返回 web 主机的域名。blog.csdn.net
location.port设置或返回 web 主机的端口 (80 或 443)。如:80
location.protocol设置或返回所使用的 web 协议。如:https:
location.pathname设置或返回当前页面的路径和文件名。如:/guang_s/article/details/94458654
location.search设置或返回一个URL的查询部分(从 ? 开始的部分)。如:?id=a&billNo=abc100
常用方法
方法描述
location.reload()重新加载当前文档。刷新
location.replace()用新的文档替换当前文档
location.assign()加载新的文档

四、History 对象


常用属性
属性描述
location.href返回当前页面的 URL
location.host设置或返回主机名及端口号
location.hostname返回 web 主机的域名
location.port返回 web 主机的端口 (80 或 443)
location.protocol返回所使用的 web 协议(http: 或 https:)
location.pathname返回当前页面的路径和文件名
常用方法
方法描述
history.back()后退。go(-1)
history.forward()向前。go(1)
history.go()加载某个具体的 URL

五、Navigator 对象


window.navigator 对象包含有关访问者浏览器的信息。


常用属性
属性描述
navigator.userAgent返回由客户机发送服务器的user-agent 头部的值
navigator.appCodeName返回浏览器的代码名
navigator.appName返回浏览器的名称
navigator.appVersion返回浏览器的平台和版本信息
navigator.cookieEnabled返回指明浏览器中是否启用 cookie 的布尔值
navigator.platform返回运行浏览器的操作系统平台
常用方法
方法描述
navigator.javaEnabled()指定是否在浏览器中启用Java
navigator.taintEnabled()规定浏览器是否启用数据污点(data tainting)

六、弹窗


警告框

警告框经常用于确保用户可以得到某些信息。
当警告框出现后,用户需要点击确定按钮才能继续进行操作。

window.alert("你好,我是一个警告框!");
确认框

确认框通常用于验证是否接受用户操作。
当确认卡弹出时,用户可以点击 “确认” 或者 “取消” 来确定用户操作。
当你点击 确认, 确认框返回 true, 如果点击 取消, 确认框返回 false

var ret = confirm("确定要删除这条数据吗?");
if (ret === true) {
    alert("删除成功!");
}
else {
    console.log('取消');
}
提示框

提示框经常用于提示用户在进入页面前输入某个值。
当提示框出现后,用户需要输入某个值,然后点击确认或取消按钮才能继续操纵。
如果用户点击确认,那么返回值为输入的值。如果用户点击取消,那么返回值为 null

window.prompt("sometext","defaultvalue")

七、计时事件


通过使用 JavaScript,我们有能力做到在一个设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行。我们称之为计时事件。

方法描述
setInterval(fn, milliseconds)间隔指定的毫秒数不停地执行指定的代码
setTimeout(fn, milliseconds)间隔指定的毫秒数执行指定的代码(一次)
clearInterval(intervalVariable)停止 setInterval() 方法执行的函数代码
clearTimeout(intervalVariable)停止执行setTimeout()方法的函数代码
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值