美文网首页
DOM 介绍

DOM 介绍

作者: 小漫画ing | 来源:发表于2018-04-05 10:20 被阅读0次
    • DOM(文档对象模型)是针对 HTML 和 XML 文档的一个 API,通过 DOM 可以去改变文档。
      简单的说,一个 web 网页就是一个文档,使用 DOM 改变文档就是使用 DOM 定义的一些方法操作具体的节点。比如用getElementById 来根据元素 id 来查找元素节点。
      当浏览器载入HTML时,会生成相应的 DOM 树,大概长这样:


      小可爱.png

    • 把它转成 HTML 代码的话会是这样
    <html lang="en">
      <head>
        <title>我是title</title>
      </head>
      <body>
        <a href="#">我是文本链接</a>
        <p id="myId">我是p标签</p>
      </body>
    </html>
    
    • 对于一个 HTML 来说,文档节点 Document (是看不到的)就是它的根节点,这个根节点对应的对象就是 document ,我们可以通过根节点来访问它的子节点(Element 、Text)。

    Document 类型

    刚才说道 Document 是整个文档的根节点,我们想要访问某个节点的时候都必须通过 document 这个实例对象。
    document 对象的常用属性:

    document.documentElement  // 可以直接拿到 html 节点的引用
    document.title //  可以直接获取 title 节点的文本 “我是title”
    document.URL // 获取 URL
    

    document 对象的常用方法

    document.getElementById // docment.getElementById('myId') 可以获取到属性 id 为 ‘myId’ 的节点,在上面的代码中获取的也就是 p 节点
    document.getElementsByTagName //docment.getElementByTagName('p') 可以获取到节点为 p 的所有节点集
    

    现在我们就根据 document 对象中的方法获取到 HTML 中任意节点了,下面我们来介绍在已经拿到节点的基础上该如何对该节点进行操作。

    Element 类型

    通常我们在使用 document 对象来获取节点时,返回的节点类型就是 Element 类型,所以我们想要对获取的节点进行操作,我们只需要使用 Element 包含的属性和方法即可。
    常用的属性:

    var myNode = document.getElementById('myId');
    myNode.id // 获取该节点的 id ,即 ‘myId‘
    myNode.tagName // 获取该节点的节点名,即 'P',大部分浏览器返回的标签名都是大写
    myNode.className //获取该节点的 class
    

    操作节点属性的常用方法:

    //假如我们有一个 input,我们想要获取 input 的 type 属性,并对 type 属性进行操作
    <input type='text' id='input'/>
      
    var myNode = document.getElementById('input')
    myNode.getAttribute('type') // 获取属性值,即 ‘text’
    myNode.setAttribute('type','password') // 将 type 属性值改为 password 类型
    myNode.removeAttribute('type') // 移除 type 属性                              
    

    相关文章

      网友评论

          本文标题:DOM 介绍

          本文链接:https://www.haomeiwen.com/subject/vdochftx.html