博客
关于我
13.DOM和节点
阅读量:534 次
发布时间:2019-03-08

本文共 1315 字,大约阅读时间需要 4 分钟。

DOM 概念

DOM 全称是 Document Object Model(文档对象模型),它是 HTML 和 XML 文档的一种表示方法。DOM 将一个 HTML 文档视为一棵树状结构,其中每个节点代表文档中的一个部分,比如元素、属性或文本。

DOM 的核心概念

在 JavaScript 中,对象可以分为三类:

  • 用户定义的对象:通过 new 关键字创建的普通对象
  • 内建对象:如 ArrayDateMath 等内置的 JavaScript 对象
  • 宿主对象:与 JavaScript 引擎相关的对象
  • DOM 的核心思想是通过 DOM 方法获取和操作文档中的元素、属性和文本。例如:

    你想学习什么编程语言?

    本网页由 JS 写成,期待您对其进行学习

    • JavaScript
    • HTML5
    • SpringCloud

    在上述代码中,body 标签下的节点包括 h1pulul 标签下的节点则是 li 标签。

    DOM 节点类型

    在 DOM 中,节点可以分为三种类型:

  • 元素节点 (Element Node):如 HTML 标签 <div><p>
  • 属性节点 (Attribute Node):如 HTML 标签中的 titleclass 等属性值
  • 文本节点 (Text Node):如 HTML 文本内容
  • 以以下示例为例:

    本网页由 JS 写成,期待您对其进行学习

    • <p> 是元素节点
    • title 是属性节点
    • 本网页由 JS 写成,期待您对其进行学习 是文本节点

    如何获取 DOM 节点

    获取 DOM 节点的方式主要有以下三种:

  • document.getElementById():通过 id 属性快速获取元素
    let eleNode = document.getElementById('classList');
  • document.getElementsByTagName():通过标签名获取所有同一标签的元素
    let oList = document.getElementsByTagName('li');
  • document.getElementsByClassName():通过 class 属性值获取元素
    let oItems = document.getElementsByClassName('item');
  • 通过以上方法,可以轻松获取 DOM 中的各种节点,并根据需要进行操作。

    DOM 的实际应用

    在实际开发中,DOM 可用于以下操作:

  • 元素的添加与删除:例如通过 appendChild()removeChild() 方法
  • 属性的设置与修改:通过 setAttribute()removeAttribute() 方法
  • 文本内容的修改:通过 textContentinnerHTML 属性
  • 事件的绑定:通过 addEventListener() 方法
  • 动态生成内容:通过 document.createElement() 方法创建新元素
  • 通过合理运用 DOM 方法,可以实现对 HTML 文档的灵活操作,充分发挥 JavaScript 的优势。

    转载地址:http://vjxnz.baihongyu.com/

    你可能感兴趣的文章
    Springboot基础入门
    查看>>
    php函数性能优化中应注意哪些问题?
    查看>>
    PHP函数操作数字和汉字互转(100以内)
    查看>>
    PHP函数方法
    查看>>
    PHP创建目录mkdir无写入权限的问题解决方案
    查看>>
    PHP删除指定目录下的所有文件和文件夹 | 删除指定文件
    查看>>
    php删除文件夹下面所有文件包括(删除文件夹)不删除文件夹
    查看>>
    React Collapse Pane 项目教程
    查看>>
    php判断ip黑名单程序代码
    查看>>
    php判断复选框是否被选中的方法
    查看>>
    PHP判断指定目录下是否存在文件
    查看>>
    php判断数组是否为空
    查看>>
    PHP判断数组是否有重复值、获取重复值
    查看>>
    springboot基于Web的社区留守儿童管理系统源码毕设+论文
    查看>>
    Springboot基于Redisson实现Redis分布式可重入锁【案例到源码分析】
    查看>>
    PHP利用正则表达式实现手机号码中间4位用星号(*)替换显示
    查看>>
    PHP加密与安全的最佳实践
    查看>>
    PHP加速器eaccelerator导致php-fpm进程卡死原因分析
    查看>>
    PHP区分 企业微信浏览器 | 普通微信浏览器 | 其他浏览器
    查看>>
    php原生代码怎么连表查询,PHP tp5中使用原生sql查询代码实例
    查看>>