zoukankan      html  css  js  c++  java
  • dom

    DOM

    DOM(Document Object Model)是一套对文档的内容进行抽象和概念化的方法。

    当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)。

    HTML DOM 模型被构造为对象的树。

    (js代码可以写在title或者body里面,但是一般写在body里面,然后是body的最下面,因为js可能会引用到标签,要等所有的标签加载完之后再执行js代码就不会报错)(如下)

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <script>
        function func(){
            alert('hello baby')
        }
        setTimeout(func,7000)
    </script>
    </body>
    </html>
    

    HTML DOM 树

    DOM标准规定HTML文档中的每个成分都是一个节点(node):

    • 文档节点(document对象):代表整个文档
    • 元素节点(element 对象):代表一个元素(标签)
    • 文本节点(text对象):代表元素(标签)中的文本
    • 属性节点(attribute对象):代表一个属性,元素(标签)才有属性
    • 注释是注释节点(comment对象) 

    JavaScript 可以通过DOM创建动态的 HTML:

    • JavaScript 能够改变页面中的所有 HTML 元素
    • JavaScript 能够改变页面中的所有 HTML 属性
    • JavaScript 能够改变页面中的所有 CSS 样式
    • JavaScript 能够对页面中的所有事件做出反应

    2|2****查找标签

    直接查找

    document.getElementById           根据ID获取一个标签
    document.getElementsByClassName   根据class属性获取
    document.getElementsByTagName     根据标签名获取标签合集
    

    注意:

    涉及到DOM操作的JS代码应该放在文档的哪个位置。

    间接查找

    parentElement            父节点标签元素
    children                 所有子标签
    firstElementChild        第一个子标签元素
    lastElementChild         最后一个子标签元素
    nextElementSibling       下一个兄弟标签元素
    previousElementSibling   上一个兄弟标签元素
    
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <span id="s1" class="c1">我是div上面的span</span>
    <div id="d1" class="c2">我是div
        <span id="s2">我是div里面的第一个span</span>
        <p id="p1">我是div里面span下面的p标签
            <span id="s3">我是div里面的p标签里面的span标签</span>
        </p>
        <span id="s4">我是div里面的p标签下面的span标签</span>
    </div>
    <span>我是div下面的span</span>
    </body>
    </html>
    

  • 相关阅读:
    算法笔记_148:有向图欧拉回路求解(Java)
    算法笔记_147:有向图欧拉回路判断应用(Java)
    算法笔记_146:TarJan算法的应用(Java)
    算法笔记_145:拓扑排序的应用(Java)
    第十六章、例行性工作排程 (crontab)
    第十五章、磁碟配额(Quota)与进阶文件系统管理
    第十四章、Linux 账号管理与 ACL 权限配置
    第十三章、学习 Shell Scripts
    第十二章、正规表示法与文件格式化处理
    第十一章、认识与学习 BASH
  • 原文地址:https://www.cnblogs.com/huangxuanya/p/10982990.html
Copyright © 2011-2022 走看看