JS基础-DOM对象

简介: 浏览器网页就是一个Dom树形结构!

DOM对象介绍

浏览器网页就是一个Dom树形结构!

DOM:文档对象模型

  • 更新:更新Dom节点
  • 遍历Dom节点:得到Dom节点
  • 删除:删除一个Dom节点
  • 添加:添加一个新的节点 要操作一个Dom节点,就必须要先获得这个Dom节点
    网络异常,图片无法展示
    |
    对应css选择器

获得dom节点

<div id="father">
      <h1>标题一</h1>
      <p id="p1">p1</p>
      <p class="p2">p2</p>
    </div>
    <script>
  var h1= document.getElementsByTagName("h1")
  var p1=document.getElementById("p1")
  var p2= document.getElementsByClassName("p2")
  var father=document.getElementById("father")
    </script>

网络异常,图片无法展示
|

  • 获得父节点下的所有子节点

网络异常,图片无法展示
|

更新节点

<p id="p1">稀土掘金</p>
    <script>
     var a=document.getElementById("p1")
    </script>

操作文本

  • a.innerText="123" 修改文本的值
  • a.innerHTML="<strong>123</strong>" 可以解析HTML文本标签 操作js
  • a.style.color="red";
  • a.style.fontSize="200px";
  • a.style.padding="2em"

删除节点(一)

删除节点的步骤:先获取父节点,在通过父节点删除自己

<div id="father">
      <h1>标题一</h1>
      <p id="p1">p1</p>
      <p class="p2">p2</p>
    </div>
    <script>
  var father=document.getElementById("father")
        </script>
  • var self = document.getElementById(p1);获取要删除的节点
  • var father = p1.parentElement  找到删除节点的父节点
  • father.removeChild(self) 删除节点

删除节点(二)

  • father.removeChild(father.children[0])
  • father.removeChild(father.children[1])
  • father.removeChild(father.children[2])
  • 注意:删除多个节点的时候,children是在时刻变化的,删除节点的时候一定要注意!

插入节点

我们获取了某个节点,假设这个节点是空的,我们通过innerHTML就可以增加一个元素了,但是这个DOM节点已经存在元素,我们就不能这么干了,会产生覆盖 追加

<body>
    <p id="js">javaScript</p>
    <div id="list">
      <p id="11">xitu11</p>
      <p id="22">xitu22</p>
      <p id="33">xitu33</p>
    </div>
    <script>
    var js=document.getElementById("js")
    var list=document.getElementById("list")
    </script>
  </body>
  • list.appendChild(js) 追加到最后面

网络异常,图片无法展示
|
   
网络异常,图片无法展示
|

创建节点

var jsss=document.createElement("style")
    jsss.setAttribute('type','text/css')
    jsss.innerHTML='body{background-color:black}'
    document.getElementsByTagName('head')[0].appendChild(jsss)


相关文章
|
2月前
|
JavaScript 前端开发 Go
CSS 与 JS 对 DOM 解析和渲染的影响
【10月更文挑战第16天】CSS 和 JS 会在一定程度上影响 DOM 解析和渲染,了解它们之间的相互作用以及采取适当的优化措施是非常重要的。通过合理的布局和加载策略,可以提高网页的性能和用户体验,确保页面能够快速、流畅地呈现给用户。在实际开发中,要根据具体情况进行权衡和调整,以达到最佳的效果。
|
1月前
|
JavaScript 前端开发
如何在 JavaScript 中使用 __proto__ 实现对象的继承?
使用`__proto__`实现对象继承时需要注意原型链的完整性和属性方法的正确继承,避免出现意外的行为和错误。同时,在现代JavaScript中,也可以使用`class`和`extends`关键字来实现更简洁和直观的继承语法,但理解基于`__proto__`的继承方式对于深入理解JavaScript的面向对象编程和原型链机制仍然具有重要意义。
|
1月前
|
Web App开发 JavaScript 前端开发
如何确保 Math 对象的方法在不同的 JavaScript 环境中具有一致的精度?
【10月更文挑战第29天】通过遵循标准和最佳实践、采用固定精度计算、进行全面的测试与验证、避免隐式类型转换以及持续关注和更新等方法,可以在很大程度上确保Math对象的方法在不同的JavaScript环境中具有一致的精度,从而提高代码的可靠性和可移植性。
|
1月前
|
JavaScript 前端开发 索引
js中DOM的基础方法
【10月更文挑战第31天】这些DOM基础方法是操作网页文档结构和实现交互效果的重要工具,通过它们可以动态地改变页面的内容、样式和行为,为用户提供丰富的交互体验。
|
26天前
|
JSON 前端开发 JavaScript
JavaScript中对象的数据拷贝
本文介绍了JavaScript中对象数据拷贝的问题及解决方案。作者首先解释了对象赋值时地址共享导致的值同步变化现象,随后提供了五种解决方法:手动复制、`Object.assign`、扩展运算符、`JSON.stringify`与`JSON.parse`组合以及自定义深拷贝函数。每种方法都有其适用场景和局限性,文章最后鼓励读者关注作者以获取更多前端知识分享。
18 1
JavaScript中对象的数据拷贝
|
25天前
|
缓存 JavaScript 前端开发
JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用
本文深入讲解了 JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用。
38 5
|
1月前
|
JavaScript 前端开发 开发者
.js的dom元素操作
【10月更文挑战第29天】通过灵活运用这些 DOM 元素操作方法,JavaScript 可以实现丰富的网页交互效果,如动态更新页面内容、响应用户操作、创建和删除页面元素等。在实际开发中,开发者可以根据具体的需求和场景,选择合适的 DOM 元素操作方法来实现所需的功能,为用户提供更加流畅和动态的网页体验。
|
1月前
|
JavaScript 前端开发 图形学
JavaScript 中 Math 对象常用方法
【10月更文挑战第29天】JavaScript中的Math对象提供了丰富多样的数学方法,涵盖了基本数学运算、幂运算、开方、随机数生成、极值获取以及三角函数等多个方面,为各种数学相关的计算和处理提供了强大的支持,是JavaScript编程中不可或缺的一部分。
|
2月前
|
XML 编解码 JavaScript
DOM(文档对象模型)和 BOM(浏览器对象模型)
【10月更文挑战第19天】在前端开发中,理解 DOM(文档对象模型)和 BOM(浏览器对象模型)是至关重要的。它们是 Web 开发的基础,为我们提供了与网页文档和浏览器进行交互的能力。
|
2月前
|
JavaScript 前端开发 大数据
在JavaScript中,Object.assign()方法或展开语法(...)来合并对象,Object.freeze()方法来冻结对象,防止对象被修改
在JavaScript中,Object.assign()方法或展开语法(...)来合并对象,Object.freeze()方法来冻结对象,防止对象被修改
35 0