一、BOM与DOM的区别

1.BOM(Browser Object Model)

BOM 即浏览器对象模型,BOM没有相关标准,BOM的最核心对象是window对象。window对象既为javascript访问浏览器提供API,同时在ECMAScript中充当Global对象。BOM和浏览器关系密切,浏览器很多东西可以通过javascript控制,例如打开窗口、打开选项卡、关闭页面、收藏夹等。这些功能与网页内容无关。由于没有标准,不同的浏览器实现同一功能,可以通过不同的实现方式。例如,加入收藏夹这个功能:
IE浏览器: window.external.AddFavorite(url,title);
FireFox浏览器: window.sidebar.addPanel(title, url, "");

虽然没有统一标准,但是各个浏览器的常用功能的js代码大同小异,对于常用的功能已经有默认的标准了。

2.DOM(Document Object Model)

DOM即文档对象模型,DOM是W3C标准,DOM的最根本对象是document(window.document),这个对象实际上是window对象的属性,这个对象的独特之处是这个是唯一一个既属于BOM又属于DOM的对象。DOM和文档有关,这里的文档指的是网页,也就是html文档。DOM和浏览器无关,他关注的是网页本身的内容,由于和浏览器没有多大的关系,所以标准就好定了。
 
二、BOM与DOM的联系
 

最新文章

  1. MVC框架
  2. PS网页设计教程XXIX——如何在PS中设计一个画廊布局
  3. 二叉树的先序、中序以及后序遍历(递归 && 非递归)
  4. 编绎openssl杂记(window)
  5. MyEclipse的一些配置
  6. Java开发之File类
  7. 充分利用CPU高速缓存,提高程序效率(原理篇)
  8. Delphi窗体最大化按钮不可用情况下的最大化
  9. 敲入url到浏览器后会发生什么
  10. hdu 3998 (dp+最大流)
  11. POJ 2975 Nim(普通nim)
  12. [刷题]算法竞赛入门经典(第2版) 4-4/UVa253 - Cube painting
  13. 200 OK (from cache)原因
  14. 九度OJ 1016 火星A+B AC版
  15. psql 关于主键自增的问题
  16. Mac之lnmp环境搭建
  17. python编写shell脚本
  18. 【XSY2727】Remove Dilworth定理 堆 树状数组 DP
  19. 在python中使用正则表达式(一)
  20. Linux下makefile学习

热门文章

  1. Java 关于日期加一天(日期往后多一天)
  2. OpenJudge计算概论-找和为K的两个元素
  3. bootargs中的rootwait 与rootdelay有什么区别?
  4. python小白之数组索引
  5. QML加载gif
  6. 123457---小小数学家--com.twoapp.xiaoxiaoshuxuejia
  7. python 递归和匿名函数
  8. MySQL中表的列结构的修改操作
  9. Windows 10在2018四月更新中默认安装了OpenSSH客户端
  10. Http协议!(转)