zoukankan      html  css  js  c++  java
  • BOM和DOM的区别

    一、BOM和DOM之间的关系图

    window对象是BOM的顶层(核心)对象,所有对象都是通过它延伸出来的,也可以称为window的子对象由于window是顶层对象,因此调用它的子对象时可以不显示的指明window对象,例如下面两行代码是一样的:
    window.document.getElementById("header");
    document.getElementById("header");

    二、BOM和DOM的区别

    BOM 浏览器对象模型

    提供了独立于内容而与浏览器窗口进行交互的对象。描述了与浏览器进行交互的方法和接口,可以对浏览器窗口进行访问和操作,譬如可以弹出新的窗口,改变状态栏中的文本,对Cookie的支持,IE还扩展了BOM,加入了ActiveXObject类,可以通过js脚本实例化ActiveX对象等等)

    DOM 文档对象模型

    DOM是针对XML的基于树的API。描述了处理网页内容的方法和接口,是HTML和XML的API,DOM把整个页面规划成由节点层级构成的文档。
    DOM本身是与语言无关的API,它并不与Java,JavaScript或其他语言绑定。

    BOM包含DOM

    javacsript是通过访问BOM(Browser Object Model)对象来访问、控制、修改客户端(浏览器),由于BOM的window包含了document,window对象的属性和方法是直接可以使用而且被感知的,因此可以直接使用window对象的document属性,通过document属性就可以访问、检索、修改XHTML文档内容与结构。因为document对象又是DOM(Document Object Model)模型的根节点。可以说,BOM包含了DOM(对象),浏览器提供出来给予访问的是BOM对象,从BOM对象再访问到DOM对象,从而js可以操作浏览器以及浏览器读取到的文档。
    其中BOM包含:window
    Window对象包含属性:document、location、navigator、screen、history、frames
    Document根节点包含子节点:forms、location、anchors、images、links
    从window.document已然可以看出,DOM的最根本的对象是BOM的window对象的子对象。

    区别:

    DOM描述了处理网页内容的方法和接口,BOM描述了与浏览器进行交互的方法和接口。

  • 相关阅读:
    PetaPoco.Core.ttinclude修改
    NoCache
    MapHttpRoute
    打印print
    Throttling ASP.NET Web API calls
    CodeFirst进行数据迁移之添加字段
    sql 获取filename
    image onclick
    验证
    Unity3d疑难问题解决
  • 原文地址:https://www.cnblogs.com/ytsbk/p/7337051.html
Copyright © 2011-2022 走看看