成都创新互联网站制作重庆分公司

DOM节点和元素之间有哪些区别-创新互联

这篇文章给大家分享的是有关DOM节点和元素之间有哪些区别的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

为衡水等地区用户提供了全套网页设计制作服务,及衡水网站建设行业解决方案。主营业务为成都网站建设、成都网站设计、衡水网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

文档对象模型(DOM)是一个将HTML或XML文档视为树形结构的接口,其中每个节点都是文档的一个对象。DOM还提供了一组方法来查询树、改变结构、样式。

DOM 还使用术语元素(Element)它与节点非常相似。那么,DOM节点和元素之间有什么区别呢?

1. DOM节点

理解节点和元素之间区别的关键是理解节点是什么。

更高的角度来看,DOM文档由节点层次结构组成。 每个节点可以具有父级和/或子级。

看看下面的HTML文档:



  
    My Page
  
  
    
    

My Page

    Thank you for visiting my web page!

  

该文档包含以下节点层次结构:

DOM节点和元素之间有哪些区别

是文档树中的一个节点。它有2个子节点:

子有3个子节点的节点:注释节点  ,标题

,段落

节点的父节点是节点。

HTML文档中的标记代表一个节点,有趣的是普通文本也是一个节点。段落节点

有1个子节点:文本节点“Thank you for visiting my web page!”

1.2节点类型

我们要如何区分这些不同类型的节点? 答案在于DOM Node接口,尤其是Node.nodeType属性。

Node.nodeType可以具有代表节点类型的以下值之一:

  • Node.ELEMENT_NODE

  • Node.ATTRIBUTE_NODE

  • Node.TEXT_NODE

  • Node.CDATA_SECTION_NODE

  • Node.PROCESSING_INSTRUCTION_NODE

  • Node.COMMENT_NODE

  • Node.DOCUMENT_NODE

  • Node.DOCUMENT_TYPE_NODE

  • Node.DOCUMENT_FRAGMENT_NODE

  • Node.NOTATION_NODE

常量有意义地指示节点类型:例如Node.ELEMENT_NODE代表元素节点,Node.TEXT_NODE代表文本节点,Node.DOCUMENT_NODE文档节点,依此类推。

例如,让我们选择段落节点,然后查看其nodeType属性:

const paragraph = document.querySelector('p');

paragraph.nodeType === Node.ELEMENT_NODE; // => true

代表整个节点文档树的节点类型为Node.DOCUMENT_NODE

document.nodeType === Node.DOCUMENT_NODE; // => true

2. DOM元素

掌握了DOM节点的知识之后,现在该区分DOM节点和元素了。

如果你了解节点术语,那么答案是显而易见的:元素是特定类型的节点element (Node.ELEMENT_NODE),以及文档、注释、文本等类型。

简而言之,元素是使用HTML文档中的标记编写的节点。</code>,<code><body></code>,<code><h3></code>,<code><p></code>都是元素,因为它们由标签表示。</p><p>文档类型,注释,文本节点不是元素,因为它们没有使用标签编写:</p><p><code>Node</code>是节点的构造函数,<code>HTMLElement</code> 是 JS DOM 中元素的构造函数。段落既是节点又是元素,它同时是<code>Node</code>和<code>HTMLElement</code>的实例</p><pre>const paragraph = document.querySelector('p'); paragraph instanceof Node;        // => true paragraph instanceof HTMLElement; // => true</pre><p>简单地说,元素是节点的子类型,就像猫是动物的子类型一样。</p><h3>3. DOM属性:节点和元素</h3><p>除了区分节点和元素之外,还需要区分只包含节点或只包含元素的DOM属性。</p><p>节点类型的以下属性评估为一个节点或节点集合(<code>NodeList</code>):</p><pre>node.parentNode; // Node or null node.firstChild; // Node or null node.lastChild;  // Node or null node.childNodes; // NodeList</pre><p>但是,以下属性是元素或元素集合(<code>HTMLCollection</code>):</p><pre>node.parentElement; // HTMLElement or null node.children;      // HTMLCollection</pre><p>由于<code>node.childNodes</code>和node.children都返回子级列表,因此为什么要同时具有这两个属性? 好问题!</p><p>考虑以下包含某些文本的段落元素:</p><pre><p>   <b>Thank you</b> for visiting my web page! </p></pre><p>打开演示,然后查看parapgraph节点的<code>childNodes</code>和<code>children</code>属性:</p><pre>const paragraph = document.querySelector('p'); paragraph.childNodes; // NodeList:       [HTMLElement, Text] paragraph.children;   // HTMLCollection: [HTMLElement]</pre><p><code>paragraph.childNodes</code>集合包含2个节点:<code><b>Thank you</b></code>,,以及<code>for visiting my web page!</code>文本节点!</p><p>但是,<code>paragraph.children</code>集合仅包含1个项目:<code><b>Thank you</b></code>。</p><p>由于<code>paragraph.children</code>仅包含元素,因此此处未包含文本节点,因为其类型是文本(<code>Node.TEXT_NODE</code>),而不是元素(<code>Node.ELEMENT_NODE</code>)。</p><p>同时拥有<code>node.childNodes</code>和<code>node.children</code>,我们可以选择要访问的子级集合:所有子级节点或仅子级是元素。</p><p>DOM文档是节点的分层集合,每个节点可以具有父级和/或子级。如果了解节点是什么,那么了解DOM节点和元素之间的区别就很容易。</p><p>节点有类型,元素类型就是其中之一,元素由HTML文档中的标记表示。</p><p>感谢各位的阅读!关于“DOM节点和元素之间有哪些区别”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!</p> <br> 网站名称:DOM节点和元素之间有哪些区别-创新互联 <br> URL分享:<a href="http://cxhlcq.com/article/copide.html">http://cxhlcq.com/article/copide.html</a> </div> </div> </div> <div class="other container"> <h3>其他资讯</h3> <ul> <li> <a href="/article/pjjpos.html">Linux基础命令umask的用法</a> </li><li> <a href="/article/pjjpoc.html">JS正则表达式的验证方法</a> </li><li> <a href="/article/pjjjie.html">JavaScript纯色二维码变成彩色二维码的示例分析</a> </li><li> <a href="/article/pjjpoe.html">PHP单元测试配置与使用方法</a> </li><li> <a href="/article/pjjjip.html">独立冗余磁盘列阵</a> </li> </ul> </div> <div class="footer"> <div class="foota container"> <div class="foot_nav fl col-lg-8 col-md-8 col-sm-12 col-xs-12"> <ul> <li class="col-lg-3 col-md-3 col-sm-3 col-xs-6"> <h3>网站制作</h3> <a href="https://www.cdxwcx.com/wangzhan/shop.html" target="_blank">成都商城网站制作</a><a href="https://www.cdcxhl.com/mobile.html" target="_blank">手机网站制作</a><a href="http://www.cdxwcx.cn/bj/" target="_blank">网站制作价格</a><a href="http://www.cdxwcx.cn/" target="_blank">成都网站制作公司</a><a href="http://chengdu.xwcx.net/mobile/" target="_blank">移动手机网站制作</a><a href="http://www.cdxwcx.cn/bj/" target="_blank">网站制作报价</a> </li> <li class="col-lg-3 col-md-3 col-sm-3 col-xs-6"> <h3>企业服务</h3> <a href="https://www.cdcxhl.com/ruanwen/yingxiao/" target="_blank">软文平台</a><a href="https://www.cdcxhl.com/mianfei/jianshe/chengdu.html" target="_blank">免费网站建设</a><a href="https://www.cdcxhl.com/mianfei/jianzhan/" target="_blank">免费建站模板</a><a href="https://www.cdcxhl.com/mianfei/zuo/chengdu.html" target="_blank">免费做网站</a><a href="https://www.cdcxhl.com/shoulu/" target="_blank">网站收录</a><a href="https://www.cdcxhl.com/mianfei/jianzhan/" target="_blank">免费建站</a> </li> <li class="col-lg-3 col-md-3 col-sm-3 col-xs-6"> <h3>网站建设</h3> <a href="http://www.lswzjz.com/" target="_blank">乐山网站建设</a><a href="http://www.cxhljz.com/" target="_blank">成都做网站建设公司</a><a href="http://chengdu.cdcxhl.cn/seo/" target="_blank">营销网站建设</a><a href="http://www.scgulin.cn/" target="_blank">古蔺网站建设</a><a href="http://www.cqcxhl.com/" target="_blank">重庆企业网站建设</a><a href="http://m.cdcxhl.cn/mobile/" target="_blank">网站建设公司</a> </li> <li class="col-lg-3 col-md-3 col-sm-3 col-xs-6"> <h3>服务器托管</h3> <a href="https://www.cdcxhl.com/idc/meishan.html" target="_blank">眉山服务器托管</a><a href="http://www.cdfuwuqi.com/tuoguan/duoxian/" target="_blank">多线服务器托管</a><a href="http://www.cdxwcx.cn/tuoguan/mianyang.html" target="_blank">绵阳主机托管</a><a href="https://www.cdcxhl.com/jigui/" target="_blank">服务器机柜租用</a><a href="https://www.cdcxhl.com/jigui/" target="_blank">成都机柜租用</a><a href="https://www.cdxwcx.com/jifang/guanghua.html" target="_blank">光华服务器托管</a> </li> </ul> </div> <div class="footar fl col-lg-4 col-md-4 col-sm-12 col-xs-12"> <p>全国免费咨询:</p> <b>400-028-6601</b> <p>业务咨询:028-86922220 / 13518219792</p> <p>节假值班:18980820575 / 13518219792</p> <p>联系地址:成都市太升南路288号锦天国际A幢1002号</p> </div> </div> <div class="footb"> <div class="copy container"> <div class="fl">Copyright © 成都创新互联科技有限公司重庆分公司 <a href="https://beian.miit.gov.cn/" target="_blank">渝ICP备2021005571号</a></div> <!--<div class="fr"><a href="https://www.cdxwcx.com/" target="_blank">成都网站建设</a>:<a href="https://www.cdcxhl.com/" target="_blank">创新互联</a></div>--> </div> </div> <div class="link"> <div class="container"> 友情链接:: <a href="https://www.cdcxhl.com/" target="_blank">成都网站建设</a> <a href="https://www.cdcxhl.com/city/chongqing.html" target="_blank">重庆网站建设</a> <a href="">四川网站建设</a> <a href="">重庆建设网站</a> <a href="https://www.cdxwcx.com/jifang/xiyun.html" target="_blank">移动服务器托管</a> <a href="http://www.cdfuwuqi.com/" target="_blank">成都服务器托管</a> <a href="https://www.cdcxhl.cn/" target="_blank">云服务器</a> <a href="http://www.cdhuace.com/" target="_blank">广告设计制作</a> <a href="https://www.cdcxhl.com/sheji/chongqing.html" target="_blank">重庆网页设计</a> <a href="https://www.cdcxhl.com/zuo/chongqing.html" target="_blank">重庆做网站</a> <a href="https://www.cdcxhl.com/zhizuo/chongqing.html" target="_blank">重庆网站制作</a> <a href="">重庆网站建设</a> <a href="">重庆网站公司</a> <a href="">渝中网站制作</a> <a href="">重庆网站设计</a> </div> </div> </div> <div class="foot"> <ul class="public-celan"> <li> <a href="https://p.qiao.baidu.com/cps3/chatIndex?siteToken=6ce441ff9e2d6bedbdfc2a4138de449e&speedLogId=162260383240185e3_1622603832401_02407&eid=6256368&reqParam=%7B%22from%22%3A1%2C%22sessionid%22%3A%22-100%22%2C%22siteId%22%3A%2211284691%22%2C%22tid%22%3A%22-1%22%2C%22userId%22%3A%226256368%22%2C%22ttype%22%3A1%2C%22pageId%22%3A0%7D" target="_blank" class="a1 db tc"> <img src="/Public/Home/img/icon-23.png" alt="" class="db auto"> <span class="span-txt">在线咨询</span> </a> </li> <li> <a href="tel:18980820575" class="a1 db tc"> <img src="/Public/Home/img/icon-24.png" alt="" class="db auto"> <span class="span-txt">电话咨询</span> </a> </li> <li> <a target="_blank" href="tencent://message/?uin=1683211881&Site=&Menu=yes" class="a1 db tc"> <img src="/Public/Home/img/icon-25.png" alt="" class="db auto"> <span class="span-txt">QQ咨询</span> </a> </li> <li> <a target="_blank" href="tencent://message/?uin=532337155&Site=&Menu=yes" class="a1 db tc public-yuyue-up"> <img src="/Public/Home/img/icon-26.png" alt="" class="db auto"> <span class="span-txt">预约顾问</span> </a> </li> </ul> </div> <div class="customer"> <dl class="icon1"> <dt> <a href="tencent://message/?uin=1683211881&Site=&Menu=yes"> <i class="iconT"><img src="/Public/Home/img/QQ.png" alt=""></i> <p>在线咨询</p> </a> </dt> </dl> <dl class="icon2"> <dt><i><img src="/Public/Home/img/weixin.png" alt=""></i><p>微信咨询</p></dt> <dd><img src="/Public/Home/img/ewm.png"></dd> </dl> <dl class="icon3"> <dt><i><img src="/Public/Home/img/dianhua.png" alt=""></i><p>电话咨询</p></dt> <dd> <p>028-86922220(工作日)</p> <p>18980820575(7×24)</p> </dd> </dl> <dl class="icon4"> <dt class="sShow"> <a href="tencent://message/?uin=244261566&Site=&Menu=yes"> <i><img src="/Public/Home/img/dengji.png" alt=""></i><p>提交需求</p> </a> </dt> </dl> <dl class="icon5"> <dt class="gotop"> <a href="#top"> <i><img src="/Public/Home/img/top.png" alt=""></i><p>返回顶部</p> </a> </dt> </dl> </div> </body> </html> <script> $(".con img").each(function(){ var src = $(this).attr("src"); //获取图片地址 var str=new RegExp("http"); var result=str.test(src); if(result==false){ var url = "https://www.cdcxhl.com"+src; //绝对路径 $(this).attr("src",url); } }); window.onload=function(){ document.oncontextmenu=function(){ return false; } } </script>