首页 > 编程语言 >JavaScript入门⑦-DOM操作大全

JavaScript入门⑦-DOM操作大全

时间:2022-12-07 10:44:35浏览次数:63  
标签:JavaScript console log DOM 元素 div document 节点 大全

image.png

JavaScript入门系列目录

01、DOM(document)

DOM(Document Object Model)文档对象模型,将文档document解析为一个由节点和对象(包含属性和方法的对象)组成的逻辑树,每个节点都是一个对象,document 对象就是整个DOM树的根节点。DOM提供的API方法用来管理这棵树,用JavaScript 等脚本语言操作文档结构、样式和内容。

5f9f1289909ffdf88033e5bd92ad7ae9_v2-30a65f5bc123bc513dc2584c5c2e517f_1440w_source=172ae18b.jpg

1.1、DOM结构-节点/元素

DOM树是由很多节点构成,分为下面几种类型,注意节点是包含文本、注释的。

节点类型 描述 示例
document文档节点 document文档本身,DOM的入口(根) document
element元素节点 所有HTML元素Element /ˈelɪmənt/ i html、body、a、p
attribute属性节点 元素的属性 id、name、href、class
文本节点 元素内的文本形成文本节点 文本字符、换行、空格
注释节点 注释 <!--注释-->

一颗完整的DOM树,除了显而易见的元素,还有注释、换行符构成的文本类节点。

<!DOCTYPE HTML>
<html>
    <body>
        The truth about elk.
        <ol>
            <li>An elk is a smart</li>
            <!-- comment -->
            <li>...and cunning animal!</li>
        </ol>
    </body>
</html>

image.png

当前选择元素$0:在浏览器控制台中,$0标识当前选中的元素。$0.style.background='red';

节点和元素在DOM树上的不同视图(导航方式)如下图,现代JS中主要使用元素导航属性。

image.pngimage.png

✅节点-导航属性 描述 ✅元素-导航属性 描述
parentNode 父节点 parentElement 父元素,一般和parentNode一样,只有document.documentElement不同
firstChild 第一个子节点 firstElementChild 第一个子元素
lastChild 最后一个子节点 lastElementChild 最后一个子元素
childNodes 子节点集合 children 子元素集合
nextSibling 下一个兄弟节点 nextElementSibling 下一个兄弟元素( Sibling/ˈsɪblɪŋ/ 兄弟)
previousSibling 上一个兄弟节点 previousElementSibling 上一个兄弟元素(/ˈpriːviəs/以前 )
document.documentElement.parentNode; //HTMLDocument
document.documentElement.parentElement; //null
document.body.childNodes.length; //33
document.body.children.length; //16
document.body.firstElementChild;

❓元素节点:这里的导航属性都是只读的,不可用于插入、修改元素;都是实时的;集合是可迭代的,用for..of,不要用for(in)

1.2、节点Node/元素Element

节点/元素的继承层次结构如下,最基础的EventTarget 又继承自Object,因此可以自由添加属性、方法。

image.png

  • EventTarget:—— 是一切的根(“抽象(abstract)”类),定义了基础的事件。
  • Node:也是一个“抽象”类,充当 DOM 节点的基础,提供了节点导航功能,如parentNode,nextSibling,childNodes 等。
  • Document:表示整个文档,全局变量document就是他。
  • CharacterData:一个文本“抽象”类,被Text(文本节点) 、Comment (注释节点)继承。(Character/ˈkærəktər/ 符号文字)
  • Element:是 DOM 元素的基础类,提供了元素导航功能,如nextElementSibling,children等,以及搜索方法getElementsByTagNamequerySelector等。
  • HTMLElement:所有 HTML 元素的基础类,常用的如:HTMLInputElement、HTMLBodyElement、HTMLAnchorElement、HTMLDivElement、HTMLTableElement
document.body.querySelector("div").constructor.name; //HTMLDivElement
document.body.querySelector("div").toString(); //[object HTMLDivElement]

标签:JavaScript,console,log,DOM,元素,div,document,节点,大全
From: https://www.cnblogs.com/anding/p/16890295.html

相关文章

  • JavaScript中的中间排序算法
    英文|https://medium.com/@gianfranconuschese/intermediate-sorting-algorithms-in-javascript-4ec8b641b32翻译|web前端开发(ID:web_qdkf)最近,我介绍了一些使用JavaScri......
  • (转)MySQL常用系统表大全
    原文:https://blog.csdn.net/xlxxcc/article/details/51754524?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERa......
  • 前端开发JS之BOM、DOM操作、事件、jQuery类库
    BOM操作DOM操作查找标签操作节点class与css操作事件事件实战案例jQuery类库标签对象与jQuery对象BOM操作全称:BrowserObjectModel指浏览......
  • 前端之BOM与DOM
    目录BOM操作window对象window的子对象弹出框计时相关setTimeout()clearTimeout()setinterval()clearInterval()DOM操作查找标签直接查找间接查找节点操作操作节点获取值操......
  • 前端 BOM,DOM, jQuery
    BOM操作 //1.BOM(BrowserObjectModel)指的是浏览器对象模型,它会让JavaScript具备与浏览器交互的能力//2.一些BOM操作-1.window.open()//......
  • 前端基础之BOM和DOM,jQuery类库
    BOM操作BOM(BrowserObjectModel)是指浏览器对象模型,它使JavaScript有能力与浏览器进行“对话”。window对象Window对象是客户端JavaScript最高层对象之一,由于window对......
  • JavaScript与jQuery基础入门到放弃
    JavaScript与jQuery基础入门到放弃引言:-BOM操作-DOM操作-jQuery类库BOM操作BOM(BrowserObjectModel)指浏览器对象模型,使JavaScript有能力与浏览器交互......
  • JavaScript——输入框、计时器
    JavaScript——输入框、计时器<!DOCTYPEhtml><html> <head> <metacharset="utf-8"> <title></title> </head> <bodyonload="get_time()"> <!--<formaction......
  • BOM与DOM、jQuery类库
    BOM与DOM、jQuery类库目录BOM与DOM、jQuery类库Window对象BOM操作DOM操作操作节点获取值操作class与css操作事件jQuery类库标签对象与jQuery对象Window对象window对象表......
  • 前端之js之BOM操作-DOM操作-jQuery类库
    目录前端之js之BOM操作-DOM操作-jQuery类库今日内容概要今日内容详细BOM操作DOM操作查找标签操作节点获取值操作class与css操作事件事件实战案例jQuery类库标签对象与jQuer......