javascript---BOM

          上一篇博客我们讲到了DOM,这篇博客我们将继续BOM。


        一 什么是BOM?


       BOM全称为Browser Object Model浏览器对象模型。

能够通过浏览器提供的这些对象。操作浏览器。


       二 体系结构 


       BOM它提供了非常多对象,用于訪问浏览器的功能。BOM缺少规范。每一个浏览器提供商又依照自己想法去扩展它。那么浏览器共同拥有对象就成了事实的标准。

所以,bom本身是没有标准的或者还没有哪个组织去标准它。

它的的核心是window。它表示浏览器的一个实例,当我们打开浏览器的一个窗体时,系统会为其自己主动定义一个window对象,有了window对象我们就能够通过它来訪问浏览器的功能。比方:提示弹出框。window.alert("我是window对象的方法")。由于window是全局的、整个网页的,全部此处的window是能够省略的。

     window对象和普通的对象一样也具有属性和方法。通过这些属性和方法我们可以实现操作浏览器的功能。

浏览器将浏览器可以实现的功能封装在对象里,详细表现为对象的属性和方法。

外界仅仅要使用我的这些对象的属性和方法就行实现你想要的效果。这些对象更像是浏览器留给外界的接口,你仅仅要用就好了,至于我内部是怎样实现的外界是没有必要知道的。 

    window对象有一系类的属性。这些属性本身也是对象。例如以下图所看到的,window对象包括document对象、frames对象、history对象、location对象等。

当打开一个网页的时候这些对象就伴随着window对象自己主动生成了。window对象与其它对象之间的组合关系。


  

       三  BOM和javascript的关系


       BOM是浏览器与外界联通的通道,也能够说是浏览器为外界创建的使用环境,BOM和javascript的关系就是环境与使用者的关系。网页的载入等都是在浏览器的基础上进行的。外界就是通过浏览器提供的接口/环境BOM,来达到与浏览器交互的目的。

javascript是基于对象和事件驱动并具有相对安全性的client脚本语言。同一时候也是一种广泛用户clientweb开发的脚本语言。经常使用来给HTML网页加入动态功能。javascript就是通过浏览器提供的BOM的各个对象来实现网页加入动态功能。

       

       四  BOM和DOM的关系


        在上图中我们能够看到window对象中包括一个document对象,每一个载入浏览器的HTML文档都会成为Document对象。document对象使我们能够从脚本中对HTML页面中的全部元素进行訪问。当浏览器载入一个html页面时,浏览器会依据html页面中的标签,将它解析为DOM中的节点。终于形成DOM结构树。这部分内容在《javascript--- HTML DOM》中已经解释,如有疑问。请移驾。

       总之。DOM是BOM的一部分,BOM是浏览器对外提供的对象构成的一个大体系,而DOM是这个体系中仅仅关于文档的一个小体系。 

       五 总结

       BOM就是对浏览器的各种操作封装为对象,外界通过操作这些对象就能够操控浏览器。它是浏览器对外界提供的接口。

DOM是BOM的一部分,javascript脚本通过使用这些对象。实现网页的动态功能。



      


原文地址:https://www.cnblogs.com/jzssuanfa/p/6853103.html