• HTML DOM的学习


    请看下面的 HTML 片段:

    <html>
      <head>
        <title>DOM 教程</title>
      </head>
      <body>
        <h1>DOM 第一课</h1>
        <p>Hello world!</p>
      </body>
    </html>
    

    从上面的 HTML 中:

    • <html> 节点没有父节点;它是根节点
    • <head> 和 <body> 的父节点是 <html> 节点
    • 文本节点 "Hello world!" 的父节点是 <p> 节点

    并且:

    • <html> 节点拥有两个子节点:<head> 和 <body>
    • <head> 节点拥有一个子节点:<title> 节点
    • <title> 节点也拥有一个子节点:文本节点 "DOM 教程"
    • <h1> 和 <p> 节点是同胞节点,同时也是 <body> 的子节点

    并且:

    • <head> 元素是 <html> 元素的首个子节点
    • <body> 元素是 <html> 元素的最后一个子节点
    • <h1> 元素是 <body> 元素的首个子节点
    • <p> 元素是 <body> 元素的最后一个子节点
    • HTML DOM 对象 - 方法和属性

      一些常用的 HTML DOM 方法:

      • getElementById(id) - 获取带有指定 id 的节点(元素)
      • appendChild(node) - 插入新的子节点(元素)
      • removeChild(node) - 删除子节点(元素)

      一些常用的 HTML DOM 属性:

      • innerHTML - 节点(元素)的文本值
      • parentNode - 节点(元素)的父节点
      • childNodes - 节点(元素)的子节点
      • attributes - 节点(元素)的属性节点

      您将在本教程的下一章中学到更多有关属性的知识。

      方法描述
      getElementById() 返回带有指定 ID 的元素。
      getElementsByTagName() 返回包含带有指定标签名称的所有元素的节点列表(集合/节点数组)。
      getElementsByClassName() 返回包含带有指定类名的所有元素的节点列表。
      appendChild() 把新的子节点添加到指定节点。
      removeChild() 删除子节点。
      replaceChild() 替换子节点。
      insertBefore() 在指定的子节点前面插入新的子节点。
      createAttribute() 创建属性节点。
      createElement() 创建元素节点。
      createTextNode() 创建文本节点。
      getAttribute() 返回指定的属性值。
      setAttribute() 把指定属性设置或修改为指定的值。

      这里的意思是 获取元素id=a的div元素的innerHTML就是文本的值

      HTML DOM 属性

      属性是节点(HTML 元素)的值,您能够获取或设置。

      编程接口

      可通过 JavaScript (以及其他编程语言)对 HTML DOM 进行访问。

      所有 HTML 元素被定义为对象,而编程接口则是对象方法和对象属性。

      方法是您能够执行的动作(比如添加或修改元素)。

      属性是您能够获取或设置的值(比如节点的名称或内容)。

      innerHTML 属性

      获取元素内容的最简单方法是使用 innerHTML 属性。

      innerHTML 属性对于获取或替换 HTML 元素的内容很有用。

      实例

      下面的代码获取 id="intro" 的 <p> 元素的 innerHTML:

      实例

      <html>
      <body>
      
      <p id="intro">Hello World!</p>
      
      <script>
      var txt=document.getElementById("intro").innerHTML;
      document.write(txt);
      </script>
      
      </body>
      </html>
      

      亲自试一试

      在上面的例子中,getElementById 是一个方法,而 innerHTML 是属性。

      innerHTML 属性可用于获取或改变任意 HTML 元素,包括 <html> 和 <body>。

      nodeName 属性

      nodeName 属性规定节点的名称。

      • nodeName 是只读的
      • 元素节点的 nodeName 与标签名相同
      • 属性节点的 nodeName 与属性名相同
      • 文本节点的 nodeName 始终是 #text
      • 文档节点的 nodeName 始终是 #document

      注释:nodeName 始终包含 HTML 元素的大写字母标签名。

      nodeValue 属性

      nodeValue 属性规定节点的值。

      • 元素节点的 nodeValue 是 undefined 或 null
      • 文本节点的 nodeValue 是文本本身
      • 属性节点的 nodeValue 是属性值

      获取元素的值

      下面的例子会取回 <p id="intro"> 标签的文本节点值:

      实例

      <html>
      <body>
      
      <p id="intro">Hello World!</p>
      
      <script type="text/javascript">
      x=document.getElementById("intro");
      document.write(x.firstChild.nodeValue);
      </script>
      
      </body>
      </html>
      

      亲自试一试

      nodeType 属性

      nodeType 属性返回节点的类型。nodeType 是只读的。

      比较重要的节点类型有:

      元素类型NodeType
      元素 1
      属性 2
      文本 3
      注释 8
      文档 9
  • 相关阅读:
    C#的ThreadStart 和 Thread
    Thread.Join() 方法
    JSON 数据格式
    C#调试入门篇
    dll文件32位64位检测工具以及Windows文件夹SysWow64的坑
    由一篇文章引发的思考——多线程处理大数组
    windows如何定时关闭一个程序
    Spring Boot连接DB2查询结果时报错“java.lang.AbstractMethodError: com.ibm.db2.jcc.t4.b.isValid(I)Z”的解决办法
    [转]德哥的PostgreSQL私房菜
    CockroachDB学习笔记——[译]为什么Go语言是CockroachDB的正确选择
  • 原文地址:https://www.cnblogs.com/-zhong/p/10972637.html
Copyright © 2020-2023  润新知