3.2 Dom事件 Ajax Bom - 黑山( Bom )

237 阅读4分钟

1、什么是BOM

BOM(Browser Object Mode),即浏览器对象模型。浏览器页面初始化时,会在内存创建一个全局对象,用来描述当前窗口的属性和状态,这个全局对象被称为浏览器对象模型。

  • BOM由一系列相关的对象构成,并且每个对象都提供了很多方法与属性
  • BOM缺乏标准,JavaScript语法的标准化组织是ECMA,DOM的标准化组织是W3C
  • BOM最初是Netscape浏览器标准的一部分

2、BOM对象

2.1 Window 对象:

表示浏览器打开的窗口,包括获取焦点、改变滚动条、设置定时器等。 常用:

  • innerheight:  返回窗口的文档显示区的高度
  • innerwidth:  返回窗口的文档显示区的宽度
  • pageXoffset:  设置或返回当前页面相对于窗口显示区左上角的X位置(可被赋值,但是没有效果)
  • pageYoffset:  设置或返回当前页面相对于窗口显示区左上角的Y位置 (可被赋值,但是没有效果
  • screenLeft:
  • screenTop:  只读整数。声明了窗口的左上角在屏幕上 的 X 坐标和 Y 的坐标。IE、Safari、Chrome 和 Opera
  • screenX:   支持 screenLeft 和 screenTop,而Chrome、Firefox 和 Safari 支持 screenX 和 screenY。
  • screenY: 
  • alert()     显示带有一段信息和一个确认按钮的警告框
  • confirm():   显示带有一段消息以及确认按钮和取消按钮的对话框。(按确认返回 true 按取消返回false)
  • prompt():  显示可提示用户输入的对话框(按确认,返回输入的值)
  • setInterval():  按照指定的周期(以毫秒计)来调用函数或计算表达式 (通俗来讲就是,设置几毫秒运行一次程序)
  •  setTimeout():  在指定的毫秒后调用函数或计算表达式 (设置几毫秒后再执行程序)
  •   clearInterval():  取消由setInterval设置的timeout (停止setInterval())
  •   clearTimeout():  取消由setTimeout方法设置的timeout (停止setTimeout())
  • close():  关闭当前浏览器窗口
  • open():  打开一个新的浏览器窗口或查找一个已命名的窗口window.open(URL,name,Features,replace)
  • scrollBy():  按照指定的像素值来滚动的内容
  • scrollTo():  把内容滚动到指定的坐标
2.2. Navigator 对象:

包含浏览器信息。如:获取浏览器名称、版本信息、操作系统平台信息等。 常用:

  • cookieEnabled:  返回指明浏览器中是否启用 cookie 的布尔值(cookie 是记录我们登陆账号密码等信息,一般在登陆邮箱之类的时候,浏览器会提示你是否保存该账号密码)
  • onLine:  返回指明系统是否处于脱机模式的布尔值(脱机,就是你电脑是否联网)
  • userAgent:  返回由客户机发送服务器的 user-agent 头部的值
2.3. Screen 对象:

包含屏幕信息。如:获取屏幕高度、宽度等。 常用:

  • width:属性表示屏幕的像素宽度
  • height:属性表示屏幕的像素高度
  • availWidth:属性表示显示器可用宽度,屏幕的像素宽度减去任务栏等系统部件宽度之后的值
  • availHeight:属性表示显示器可用高度,屏幕的像素高度减去任务栏等系统部件高度之后的值
2.4. History 对象:

可对当前页的浏览历史进行操作,如:前进、后退等。 常用:

  • forward():相当于浏览器的前进按钮
  • back():相当于浏览器的后退按钮
  • go(参数):前往参数的历史位置,正数往前,负数往后
2.5. Location 对象:

可对当前页面的URL进行操作,如:导航到新的页面、获取URL信息等。

  • href 设置或返回完整的 URL。
  • host 设置或返回主机名和当前 URL 的端口号。
  • hash 设置或返回从井号 (#) 开始的 URL(锚)。如果地址里没有“#”,则返回空字符串。
  • hostname 设置或返回当前 URL 的主机名。
  • pathname 设置或返回当前 URL 的路径部分。
  • port 设置或返回当前 URL 的端口号。
  • protocol 设置或返回当前 URL 的协议。取值为 'http:','https:','file:' 等等。
  • search  设置或返回从问号 (?) 开始的 URL(查询部分)。
2.6 document对象:

即文档对象。 常用方法

  • document.write() //动态向页面添加内容
  • document.createElement(Tag) //创建一个html标签对象
  • document.getElementById(ID) //获得指定Id的对象
  • document.getElementByClassName(className) //获得指定class值的对象(数组)
  • document.getElementByTagName(TagName) //获得指定的tag对象
  • document.body.appendChild(Tag) //向body中添加创建的新的标签对象
  • document.getElementByName(Name) //获得指定的Name值的对象
2.7 frames对象:

包含当前页面所有的框架信息.