首页 > 其他分享 >js Comment类型

js Comment类型

时间:2024-01-23 14:04:04浏览次数:17  
标签:Comment comment CDATASection js 注释 CDATA 类型 节点

Comment类型

DOM 中的注释通过 Comment 类型表示。Comment 类型的节点具有以下特征:  nodeType 等于 8;  nodeName 值为"#comment";  nodeValue 值为注释的内容;  parentNode 值为 Document 或 Element 对象;  不支持子节点。 Comment 类型与 Text 类型继承同一个基类(CharacterData),因此拥有除 splitText()之外 Text 节点所有的字符串操作方法。与 Text 类型相似,注释的实际内容可以通过 nodeValue 或 data 属性获得。

为 Comment 或 Element。比如下面这行代码:

<div id="myDiv"><![CDATA[This is some content.]]></div> 12

这里

的第一个子节点应该是 CDATASection 节点。但主流的四大浏览器没有一个将其识别为 CDATASection。即使在有效的 XHTML 文档中,这些浏览器也不能恰当地支持嵌入的 CDATA 区块。

注释节点可以作为父节点的子节点来访问。比如下面的 HTML 代码:

<div id="myDiv"><!-- A comment --></div>

这里的注释是

元素的子节点,这意味着可以像下面这样访问它:

let div = document.getElementById("myDiv");
let comment = div.firstChild;
alert(comment.data); // "A comment"

可以使用 document.createComment()方法创建注释节点,参数为注释文本,如下所示: let comment = document.createComment("A comment"); 显然,注释节点很少通过 JavaScrpit 创建和访问,因为注释几乎不涉及算法逻辑。此外,浏览器不 承认结束的标签之后的注释。如果要访问注释节点,则必须确定它们是元素的后代。

CDATASection类型

CDATASection 类型表示 XML 中特有的 CDATA 区块。CDATASection 类型继承 Text 类型,因 此拥有包括 splitText()在内的所有字符串操作方法。CDATASection 类型的节点具有以下特征:  nodeType 等于 4;  nodeName 值为"#cdata-section";  nodeValue 值为 CDATA 区块的内容;  parentNode 值为 Document 或 Element 对象;  不支持子节点。 CDATA 区块只在 XML 文档中有效,因此某些浏览器比较陈旧的版本会错误地将 CDATA 区块解析 在真正的 XML 文档中,可以使用 document.createCDataSection()并传入节点内容来创建 CDATA区块。

标签:Comment,comment,CDATASection,js,注释,CDATA,类型,节点
From: https://blog.51cto.com/u_16273048/9379052

相关文章

  • js 规范化文本节点
    在将一个文本节点作为另一个文本节点的同胞插入后,两个文本节点的文本之间不会包含空格。2.规范化文本节点DOM文档中的同胞文本节点可能导致困惑,因为一个文本节点足以表示一个文本字符串。同样,DOM文档中也经常会出现两个相邻文本节点。为此,有一个方法可以合并相邻的文本节点。这......
  • js 创建文本节点 document.createTextNode()
    示例中的第一个div元素中不包含内容,因此不会产生文本节点。只要开始标签和结束标签之间有内容,就会创建一个文本节点,因此第二个元素会有一个文本节点的子节点,虽然它只包含空格。这个文本节点的nodeValue就是一个空格。第三个元素也有一个文本节点的子节点,其nodeValue的值为"He......
  • JS、HTML内嵌iframe第三方网页,如何通信?
    在实际使用postMessage时,如果你不确定确切的父页面或子页面的源地址(即origin),可以采取以下策略:允许任意源发送消息:如果你希望iframe子页面能够向任何父页面发送消息,或者父页面接受来自任何域的iframe消息,可以在调用postMessage时将目标源设置为通配符*://子页面向任意源发送windo......
  • 自我记录js正则
    一、数字相关只有数字:/^[0-9]*$/或/^\d{1,}$/整数:/^-?[0-9]\d*$/正整数:/^\+?[1-9]\d*$/非正整数:/^-[1-9]\d*|0$/负整数:/^-[1-9]\d*$/非负整数:/^\d+$/浮点数:/^(-?\d+)(\.\d+)?$/正浮点数:/^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$/负浮点数:/^-([1-9]\d*\.\d*|......
  • Rust 中 数据类型的整型 取值范围
      整数是一个没有小数的数组,在Rust中整数分为有无符号(-),代表数字能否负值,有符号数以补码形式存储。 长度有符号无符号8-bit i8u816-biti16u1632-biti32u3264-biti64u64128-biti128u128archisizeusize isize和usize类型依赖运......
  • 从SQL到Java数据类型映射的JDBC规范
    SQL类型Java类型CHARjava.lang.StringVARCHARjava.lang.StringLONGVARCHARjava.lang.StringNUMERICjava.math.BigDecimalDECIMALjava.math.BigDecimalBITbooleanTINYINTbyteSMALLINTshortINTEGERint......
  • OPENJSON requires Compatibility Level 130
    ParseandTransformJSONDatawithOPENJSONOPENJSONrequiresCompatibilityLevel130TheOPENJSONfunctionisavailableonlyundercompatibilitylevel130.Ifyourdatabasecompatibilitylevelislowerthan130,SQLServercan'tfindandruntheO......
  • js中的bigint类型转化为json字符串时报无法序列化的问题
    网上查了一下,解决这个问题的思路就是将bigint类型的数据转化为字符串,这样就能正确转化为json字符串了。对于一个是bigint的变量,直接使用toString方法就可以转化为字符串了,但是bigint变量在一个对象中,那么我们就需要一个更加通用的方法,网上看到一个很好的封装好的方法,如下。expor......
  • [转]js 正则相关的两个方法match和exec的区别
    原文地址:jsmatch和exec的区别_javascriptmatchexec-CSDN博客一、使用方法不同exec()是正则对象的方法;reg.exec(str);match()是字符串的正则表达方法;str.match(reg);二、返回结果不同w3cSchool是这么说的:match()方法将检索字符串stringObject,以找到一个或多个与regex......
  • Java开发者的Python进修指南:JSON利器之官方json库、demjson和orjson的实用指南
    JSONJSON作为目前最流行的传输格式,在Python中也有相应的实现方式。由于JSON格式的文本可以跨平台并且简单易用,因此被广泛传播。因此,我们今天的主要讨论内容是如何熟练地应用Python的JSON库来处理将JSON映射到文本,以及如何从文本映射到对象中。现在,让我们开始探讨这个话题。官方j......