zoukankan      html  css  js  c++  java
  • BOM DOM是什么,如何理解?

    BOM

    BOM是什么?

    BOM == Browser Object Model == 浏览器对象模型。

    js运行在浏览器中,每个页面都是一个window对象,主要关注点有以下:

    1. Window对象
    2. Screen
    3. Location
    4. History
    5. Navigator
    6. 对话框

    1.Window

    【说明】 所有浏览器均支持,表示浏览器窗口。所有 JavaScript 全局对象、函数以及变量均自动成为 window 对象的成员。

    • 全局变量是window对象的属性
    • 全局函数是window对象的方法

    为我们提供了操作浏览器的方法,比如关闭、开启页面,SPA中改变、禁用“后退”按钮。

    2.Screen

    【说明】 每个 Window 对象的 screen 属性都引用一个 Screen 对象。Screen 对象中存放着有关显示浏览器屏幕的信息,对于移动开发来说,通过Screen对象可获知设备的分辨率、DPI、可用尺寸等信息。

    常用属性描述
    height 返回显示器屏幕的高度
    width 返回显示器屏幕的宽度
    pixelDepth 返回显示屏幕的颜色分辨率
    availHeight 可用高度(除开系统任务栏)
    availWidth 可用宽度

    3.Location

    【说明】 Location 对象包含有关当前 URL 的信息。

    常用属性描述
    例子 http://example.com:1234/test/test.htm#part2
    hash 设置或返回 #part2
    host 设置或返回 example.com:1234
    href 设置或返回 http://example.com:1234/test/test.htm#part2
    protocol 当前 URL 的协议 http:
    pathName 当前访问路径 /test/test.htm
    方法描述
    assign() 加载新的文档
    reload() 重新加载当前文档
    replace() 用新的文档替换当前文档

    4.History

    【说明】 History 对象包含用户(在浏览器窗口中)访问过的 URL。

    常用属性描述
    length 返回浏览器历史列表中的 URL 数量
    back() 加载浏览器历史列表中的前一个 URL
    forward() 加载浏览器历史列表中的下一个 URL
    go() 加载浏览器历史列表中指定URL

    5.Navigator

    【说明】 Navigator 对象包含有关浏览器的信息。通过该对象可了解浏览器详细信息(版本、厂商、OS、插件等),不是可信的,因为1.所有东西都可以被修改,2.浏览器会识别错误。

    常用属性描述
    appName 返回浏览器的名称
    appVersion 返回浏览器的平台和版本信息
    platform 返回运行浏览器的操作系统平台

    6.对话框

    • alert() //单纯提示
    • confirm() //询问确认可返回布尔值
    • prompt() //用户可输入内容并返回

    DOM

    DOM是什么?

    DOM == Document Object Model == 文档对象模型

    每个载入浏览器的 HTML 文档都会成为 Document 对象。Document 对象使我们可以从脚本中对 HTML 页面中的所有元素进行访问,从而实现动态操作DOM。主要关注点有以下:

    1. DOM节点
    2. DOM方法
    3. DOM属性
    4. DOM查询
    5. DOM修改
    6. DOM事件
    7. DOM导航

    1.DOM节点

    【说明】 在 HTML DOM 中,所有事物都是节点。DOM 是被视为节点树的 HTML。

    • 整个文档是一个文档节点
    • 每个 HTML 元素是元素节点
    • HTML 元素内的文本是文本节点
    • 每个 HTML 属性是属性节点
    • 注释是注释节点

    2.DOM方法

    【说明】 HTML DOM 方法是我们可以在节点(HTML 元素)上执行的动作。

    常用方法
    • getElementById(id) - 获取带有指定 id 的节点(元素)
    • appendChild(node) - 插入新的子节点(元素)
    • removeChild(node) - 删除子节点(元素)

    3.DOM属性

    【说明】 HTML DOM 属性是我们可以在节点(HTML 元素)设置和修改的值。

    常用属性
    • innerHTML - 节点(元素)的文本值

    • nodeName - 节点(元素)的名称

    • nodeValue - 节点(元素)的值

    • nodeType - 节点(元素)的类型

      元素类型NodeType
      元素 1
      属性 2
      文本 3
      注释 8
      文档 9

    4.DOM查询

    【说明】 访问 HTML DOM = 查找 HTML 元素。

    • 通过使用 getElementById() 方法
    • 通过使用 getElementsByTagName() 方法
    • 通过使用 getElementsByClassName() 方法

    5.DOM修改

    【说明】 修改 HTML = 改变元素、属性、样式和事件。

    • 改变 HTML 内容
    • 改变 CSS 样式
    • 改变 HTML 属性
    • 创建新的 HTML 元素
    • 删除已有的 HTML 元素
    • 改变事件(处理程序)

    6.DOM事件

    【说明】 JavaScript 能够对 HTML 事件(或者说用户)做出反应。

  • 相关阅读:
    bellman-ford -------解决负权边
    为macbook做准备---linux命令
    dijkstra算法---通过边实现松弛
    只有五行的算法--floyd-warshall
    《将博客搬至CSDN》
    Ubuntu x64安装Android studio 全部步骤和问题解决
    无法添加pptp
    Android 随时随地的退出程序
    div中class和id有什么区别?
    CSS学习笔记
  • 原文地址:https://www.cnblogs.com/lonhon/p/7912031.html
Copyright © 2011-2022 走看看