博客
关于我
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/

    你可能感兴趣的文章
    NISP国家信息安全水平考试,收藏这一篇就够了
    查看>>
    NIS服务器的配置过程
    查看>>
    Nitrux 3.8 发布!性能全面提升,带来非凡体验
    查看>>
    NiuShop开源商城系统 SQL注入漏洞复现
    查看>>
    NI笔试——大数加法
    查看>>
    NLog 自定义字段 写入 oracle
    查看>>
    NLog类库使用探索——详解配置
    查看>>
    NLP 基于kashgari和BERT实现中文命名实体识别(NER)
    查看>>
    NLP 模型中的偏差和公平性检测
    查看>>
    Vue3.0 性能提升主要是通过哪几方面体现的?
    查看>>
    NLP 项目:维基百科文章爬虫和分类【01】 - 语料库阅读器
    查看>>
    NLP_什么是统计语言模型_条件概率的链式法则_n元统计语言模型_马尔科夫链_数据稀疏(出现了词库中没有的词)_统计语言模型的平滑策略---人工智能工作笔记0035
    查看>>
    NLP三大特征抽取器:CNN、RNN与Transformer全面解析
    查看>>
    NLP学习笔记:使用 Python 进行NLTK
    查看>>
    NLP度量指标BELU真的完美么?
    查看>>
    NLP的不同研究领域和最新发展的概述
    查看>>
    NLP的神经网络训练的新模式
    查看>>
    NLP采用Bert进行简单文本情感分类
    查看>>
    NLP问答系统:使用 Deepset SQUAD 和 SQuAD v2 度量评估
    查看>>
    NLP项目:维基百科文章爬虫和分类【02】 - 语料库转换管道
    查看>>