博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JS--JavaScript节点Node概述、节点类型、nodeType详解
阅读量:2441 次
发布时间:2019-05-10

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

节点Node概述

DOM 1.0定义了Node接口,该接口为DOM的所有节点类型定义了原始类型。JavaScript实现了这个接口,定义所有节点类型必须继承Node类型。作为Node的子类或孙类,都拥有Node的基本属性和方法。

节点类型

DOM规定:整个文档是一个文档节点,每个标签是一个元素节点,元素包含的文本是文本节点,元素的属性是一个属性节点,注释属于注释节点,如此等待。

每个节点都有一个nodeType属性,用于表明节点的类型,如下表:

DOM节点类型说明:

节点类型 说明 可包含的子节点
Document 表示整个文档,DOM树的根节点 Element(最多一个)、ProcessinInstruction、Comment、DocumentType
DocumentFragment 表示文档片段,轻量级的Document对象,仅包含部分文档 ProcessingInstruction、Comment、Text、CSATASection、EntityReference
DocumentType 为文档定义的实体提供接口 None
ProcessingInstruction 表示处理指令 None
EntityReference 表示实体引用元素 ProcessingInstruction、Comment、Text、CDATASection、EntityReference
Element 表示元素 Text、Comment
Attr 表示属性 Text、EntityReference
Text 表示元素或属性中的文本内容 None
CDATASection 表示文档中的CDATA区段,其包含的文本不会被解析器解析 None
Comment 表示注解 Nono
Entity 表示实体 ProcessingInstruction、Comment、Text、CDATASection、EntityReference
Notation 表示在DTD中声明的符号 None

使用nodeType属性返回值可以判断一个节点的类型:

节点类型 nodeType返回值 常量名
Element 1 ELEMENT_NODE
Attr 2 ATTRIBUTE_NODE
Text 3 TEXT_NODE
CDATASection 4 CDATA_SECTION_NODE
EntityReference 5 ENTITY_REFERENCE_NODE
Entity 6 ENTITY_NODE
ProcessingInstruction 7 PROCESSING_INSTRUCTION_NODE
Comment 8 COMMENT_NODE
Document 9 DOCUMENT_NODE
DocumentType 10 DOCUMENT_TYPE_NODE
DocumentFragment 11 DOCUMENT_FRAGMENT_NODE
Notation 12 NOTATION_NODE

示例:使用节点的nodeType属性检索当前文档中包含元素的个数:

			

DOM

DOM是Document Object Model首字母简写,中文翻译为文档对象模型,是W3C组织推荐的处理可扩展标识语言的标准编程接口。

  • D表示文档,HTML文档结构
  • O表示对象,文档结构的JavaScript脚本化映射
  • M表示模型,脚本与结构交互的方法和行为

在这里插入图片描述

在这里插入图片描述

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

你可能感兴趣的文章
用于Angular,React和Vue.js的Bootstrap UI库
查看>>
使用MongoDB Stitch在10分钟内构建一个Slack应用
查看>>
struts2 css失效_CSS体系结构和可维护CSS的三大Struts
查看>>
php使用nginx建网站_如何使用预建网站来刷新网站的外观
查看>>
使用React和PHP开发游戏:它们的兼容性如何?
查看>>
哈巴狗入门指南
查看>>
js设置css自定义变量_CSS变量实用指南(自定义属性)
查看>>
http建立个人服务器工具_建立网站和页面的最佳7种工具
查看>>
前端框架浏览器兼容解决方案_前端框架:定制与即用型解决方案
查看>>
驯服Snoo:使用Reddit API
查看>>
php页面不渲染显示源代码_PHP如何执行-从源代码到渲染
查看>>
Sourcehunt 17.1:值得关注的7个有趣PHP软件包
查看>>
使用转发装饰器实现模块化架构
查看>>
旅行者 问题_旅行者-管理员UI可以使Laravel更加平易近人吗?
查看>>
口才配置_快速提示:口才观察者的便捷魔力
查看>>
git 应用程序本身更新_如何使用Git通过SFTP正确部署Web应用程序
查看>>
laravel 绑定 区别_Laravel快速提示:模型路线绑定
查看>>
symfony_单文件Symfony应用程序? 是的,有了MicroKernelTrait!
查看>>
phpstorm许可证_PhpStorm 8发布-查看新功能并获取免费许可证
查看>>
azure免费一个月_将Windows Azure提升到一个新的水平
查看>>