大概用了二十天结束了JS第一大模块ECMAScript核心的学习,尽管ECMAScript是一个重要的标准,但它并不是JavaScript唯一的部分,当然,也不是唯一被标准化的部分。实际上,一个完整的JavaScript实现是由以下 3个不同部分组成的:
![](https://box.kancloud.cn/2016-04-28_572155917349d.jpg)
核心(ECMAScript):JavaScript的核心ECMAScript描述了该语言的语法和基本对象。
浏览器对象模型(BOM):BOM描述了与浏览器进行交互的方法和接口。
文档对象模型(DOM):DOM描述了处理网页内容的方法和接口。
那么继续接着来看第二大模块BOM(浏览器对象模型)的学习,在学习BOM之前,特意在网上看了一下BOM的介绍,这个模块大概是没有一个统一的标准,公有的知识很少,各大浏览器在扩展着BOM实现功能。因此也只是学习一
些公有的BOM对象知识。
### 一,BOM概述
IE 3.0和Netscape Navigator 3.0提供了一种特性BOM(浏览器对象模型),可以对浏览器窗口进行访问和操作。使用BOM,开发者可以移动窗口、改变状态栏中的文本以及执行其他与页面内容不直接相关的动作。使BOM独树一帜且又常常令人怀疑的地方在于,它只是JavaScript的一个部分,但是没有任何相关的标准。
### 二,BOM扩展
BOM主要处理浏览器窗口和框架,不过通常浏览器特定的JavaScript扩展都被看做BOM的一部分。这些扩展包括:
1弹出新的浏览器窗口
2移动、关闭浏览器窗口以及调整窗口大小
3提供Web浏览器详细信息的定位对象
4提供用户屏幕分辨率详细信息的屏幕对象
5对cookie的支持
6IE扩展了BOM,加入了ActiveXObject对象,可以通过JavaScript实例化ActiveX对象
### 三,BOM知识概括
由于没有相关的BOM标准,每种浏览器都有自己的BOM实现。有一些事实上的标准,如具有一个窗口对象和一个导航对象,不过每种浏览器可以为这些对象或其他对象定义自己的属性和方法。浏览器对象模型 (BOM)使JavaScript有能力与浏览器“对话”。BOM尚无正式标准。由于现代浏览器几乎已经实现了 JavaScript交互性方面的相同方法和属性,因此常被认为是BOM的方法和属性。
BOM提供了一些访问窗口对象的一些方法,我们可以用它来移动窗口位置,改变窗口大小,打开新窗口和关闭窗口,弹出对话框,进行导航以及获取客户的一些信息如:浏览器品牌版本,屏幕分辨率。
### 四,那么我们要学习BOM的哪些知识呢?
1Window对象:客户端JS的顶层对象,每当或者标签出现,Window对象就会被自动创建。
2Location对象:包含当前URL的信息。
3Document对象:包含整个HTML文档,可以用来访问页面中的所有元素。
4Screen对象:包含客户端显示屏的信息。
5History对象:包含浏览器窗口访问过的URL。
6Naviqator对象:包含客户端浏览器的信息。
7Popupalert对象:可以在JavaScript中创建三种消息框:警告框、确认框、提示框。
8Timing对象:在一个设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行。
9Cookies对象:用来识别用户。
以上就是自己对JS中BOM的理解了,有什么不妥的地方,在后面逐渐深入学习后也会将其纠正。
- 前言
- HTML学习1:Dreamweaver8的安装
- HTML学习2:初识HTML
- HTML学习3:常用标签之文本标签
- HTML学习4:常用标签之列表标签
- HTML学习5:常用标签之图像标签
- HTML学习6:常用标签之超链接标签
- HTML学习7:常用标签之表格标签
- HTML学习8:常用标签之框架标签
- HTML学习9:常用标签之表单标签
- HTML学习10:表单格式化
- HTML学习11:HTTP 方法
- HTML学习12:其他常见标签之头标签
- HTML学习13:其他常见标签之体标签
- 轻松学习JavaScript一:为什么学习JavaScript
- 轻松学习JavaScript二:JavaScript语言的基本语法要求
- 轻松学习JavaScript三:JavaScript与HTML的结合
- 轻松学习JavaScript四:JS点击灯泡来点亮或熄灭这盏灯的网页特效映射出JS在HTML中作用
- 轻松学习JavaScript五:JavaScript的变量和数据类型
- 轻松学习JavaScript六:JavaScript的表达式与运算符
- 轻松学习JavaScript七:JavaScript的流程控制语句
- 轻松学习JavaScript八:JavaScript函数
- 轻松学习JavaScript九:JavaScript对象和数组
- 轻松学习JavaScript十:JavaScript的Date对象制作一个简易钟表
- 轻松学习JavaScript十一:JavaScript基本类型(包含类型转换)和引用类型
- 轻松学习JavaScript十二:JavaScript基于面向对象之创建对象(一)
- 轻松学习JavaScript十二:JavaScript基于面向对象之创建对象(二)
- 轻松学习JavaScript十三:JavaScript基于面向对象之继承(包含面向对象继承机制)
- 轻松学习JavaScript十四:JavaScript的RegExp对象(正则表达式)
- 轻松学习JavaScript十五:JavaScript之BOM简介
- 轻松学习JavaScript十六:JavaScript的BOM学习(一)
- 轻松学习JavaScript十七:JavaScript的BOM学习(二)
- 轻松学习JavaScript二十九:JavaScript中的this详解
- CSS基础学习一:CSS概述
- CSS基础学习二:如何创建 CSS
- CSS基础学习三:CSS语法
- CSS基础学习四:元素选择器
- CSS基础学习五:类选择器
- CSS基础学习六:id选择器
- CSS基础学习七:属性选择器
- CSS基础学习八:派生选择器
- CSS基础学习九:伪类
- CSS基础学习十:伪元素
- CSS基础学习十一:选择器的优先级
- CSS基础学习十二:CSS样式
- CSS基础学习十三:盒子模型
- CSS基础学习十四:盒子模型补充之display属性设置
- CSS基础学习十五:盒子模型补充之外边距合并
- CSS基础学习十六:CSS盒子模型补充之border-radius属性
- CSS基础学习十七:CSS布局之定位
- CSS基础学习十八:CSS布局之浮动
- CSS基础学习十九:CSS布局之图文混排,图像签名,多图拼接和图片特效
- DIV+CSS实操一:经管系网页总体模块布局
- DIV+CSS实操二:经管系网页添加导航栏和友情链接栏
- DIV+CSS实操三:经管系网页内容模块添加标题栏和版权信息模块
- DIV+CSS实操四:经管系网页内容模块内容添加(一)
- DIV+CSS实操五:经管系网页内容模块内容添加(二)
- DIV+CSS实操六:经管系网页添加导航栏下拉菜单
- DIV+CSS实操七:中文系内容模块控制文本不换行和超出指定宽度后用省略号代替
- JS中实现字符串和数组的相互转化