BOM对象:
window
|__ Document 文档对象 (DOM)
|
|__ frames 框架集
|
|__ history 历史信息对象
|
|__ navigator 浏览器信息对象
|
|__ locatin 地址栏信息对象
|
|__ screen 屏幕对象
Frames
返回窗口中所有命名的框架frames[]
- 该集合是 Window 对象的数组,每个 Window 对象在窗口中含有一个框架或 <iframe>。
- 属性 frames.length 存放数组 frames[] 中含有的元素个数。
注意: frames[] 数组中引用的框架可能还包括框架,它们自己也具有 frames[] 数组。
window:
-窗口属性和方法:
打开和关闭浏览器窗口:
方法:
- 打开新的浏览器窗口或查找一个已命名的窗口open()
open(URL,name,features,replace)
-
window.open()
或open()
- URL:新窗口的地址,name:新窗口的名称,features:新窗口的特征如宽高,
- replace:是否为新窗口创建浏览历史条目,true:替换当前条目,false:创建新的条目
注意:open有返回值,返回目标窗口的window对象,可以给其绑定window方法或属性用来操作目标窗口
- 关闭浏览器窗口close()
- 某个窗口可以通过调用
self.close()
或只调用close()
来关闭其自身 - 只有通过js代码打开的窗口才能由js代码关闭,这阻止了恶意脚本终止用户的浏览器
属性:
- 返回窗口是否已被关闭closed
-
window.closed
-若窗口已经关闭,则返回false,若未关闭则返回true
-浏览器窗口的大小:
方法:
- 把窗口的大小调整到指定的宽度和高度resizeTo()
resize(width,height)
- width是必须的,但height是可选的
- 按照指定的像素调整窗口的大小resizeBy()
resizeBy(x,y)
- x表示代码每次执行向右移动的距离,y表示每次想下移动的距离
属性:
- 返回窗口的文档显示区的高度,宽度:innerheight
,innerwidht
window.innerheight
-
注意,他们有兼容性问题,IE浏览器需用以下属性代替:
document.documentElement.clientHeight
document.documentElement.clientWidht
浏览器窗口的位置:
方法:
- 把窗口的左上角移动到一个指定的坐标moveTo()
moveTo(x,y)
- x和y分别表示窗口左上角的x和y坐标
- 可相对窗口的当前坐标把它移动指定的像素moveBy()
moveBy(x,y)
- x和y分别表示相对当前坐标向右和向下移动的距离
属性:
- 返回窗口的左上角在屏幕上的的 x 坐标和 y 坐标
-
非火狐浏览器:
screenLeft,screenTop
window.screenLeft
-
火狐浏览器:
screenX,screenY
window.screenX
浏览器滚轮滚动:
- 把内容滚动到指定坐标scrollTo()
scrollTo(x,y)
- x和y分别表示要在窗口文档显示区左上角显示的文档的x和y坐标
- 按照指定的像素来滚动内容scrollBy()
scrollBy(width,height)
- width必填,为每次执行使窗口宽度增加的宽度
- height可选,为每次执行使窗口高度增加的高度
定时器和延时器:
- 开启一个定时器setInterval()
变量名 = setInterval(执行的代码,执行周期)
- 定时器会不停的调用其中的代码,知道定时器被关闭,注意:关闭定时器必须传入变量名,否则无法被关闭
- 关闭一个定时器clearInterval()
clearInterval(变量名)
- 一般会在开启定时器前先加上一个关闭,以防定时器被重复开启
- 开启一个延时器setTimeout()
变量名 = setTimeout(执行的代码,延迟时间)
- 浏览器执行到延时器的调用时会延迟,然后再执行
- 关闭一个定时器clearTimeout()
clearTimeout(变量名)
- 同定时器一样,延时器一般也会在开启延时器前先加上一个关闭,以防延时器被重复开启
浏览器弹窗:
- 显示带有一段消息和一个确认按钮的警告框alert()
window.alert()或alert(显示的文本)
- 显示带有一段消息以及确认按钮和取消按钮的对话框confirm()
confirm(提示的文本)
- confirm()有返回值点击确定返回true,点击取消返回false
- 显示可提示用户输入的对话框prompt()
prompt(提示文本,默认输入文本)
- prompt()有返回值,若点击取消则返回null,点击确认则返回输入的文本
Navigator:
返回由客户机发送服务器的 user-agent 头部的值userAgent
navigator.userAgent
是否支持cookie操作cookieEnabled
navigator.cookieEnabled
检测浏览器是否在线onLine
navigator.onLine
浏览器地理位置定位对象geolocation
navigator.geolocation
Screen:
返回当前屏幕的宽高(除了win任务栏)availWidth,availHeight
screen.availWidth
返回显示屏幕的宽高width,height
screen.width
History:
属性:
返回浏览器历史列表中的 URL 数量length
history.length
方法:
加载 history 列表中的前一个 URL back()
history.back()
加载 history 列表中的下一个 URL forward()
history.forward()
加载 history 列表中的某个具体页面 go()
history.go(numder | URL)
Location:
方法:
加载新的文档 assign()
location.assign(URL)
重新加载当前文档 reload()
location.reload(布尔值或不填)
- 如不填或false,则会从缓存中获取刷新
- 如填true,则重新下载刷新
用新的文档替换当前文档replace()
location.replace(newURL)
- 该方法产生的记录会直接覆盖当前记录
属性:
设置或返回主机名和当前 URL 的端口号 host
location.host
设置或返回当前 URL 的主机名 hostname
-
location.hostname
设置或返回当前 URL 的端口号 port location.port
设置或返回完整的 URL href
-
location.href
设置或返回当前 URL 的路径部分 pathname -
location.pathname
设置或返回当前 URL 的协议 protocol -
location.protocol
设置或返回从井号 (#) 开始的 URL(锚)hash -
location.hash
或location.hash=锚点
- 可用来传输数据,也可用来定位锚点
设置或返回从问号 (?) 开始的 URL(查询部分)search
location.search
- 只能用来传输数据
网友评论