欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JavaScript Dom对象的操作

程序员文章站 2022-06-24 10:10:14
目录一、核心1、获得dom节点2、更新节点2.1 实战演练3、删除dom节点4、插入节点4.1 把已有的标签进行插入4.2 创建一个新的标签,实现插入4.3 在子节点前插入(insertbefore)...

一、核心

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

  • 更新:更新dom节点
  • 遍历dom节点:获得dom节点
  • 删除:删除一个dom节点
  • 添加:添加一个新的节点

要操作一个dom节点,就必须要先获得这个dom节点

1、获得dom节点

 <body>
    <div id="div1">
   <h1 id="h"></h1>
   <p class="p1"></p>
   </div>
 </body>

 //通过标签
   document.getelementsbytagname('h1');
  //通过id
   document.getelementbyid('div1');
  //通过class
   document.getelementsbyclassname('p1');
  //获取父节点
   h.parentelement
  //获取父节点下所有子节点
   div1.children[index];
  //获取当前节点下,第一个节点
   div1.firstelementchild;
  //获取当前节点下,最后一个节点
   div1.lastelementchild;
  //获取下一个节点
   h.nextelementsibling;

2、更新节点

   //更新文本的值
   div1.innertext='修改文本的值'; 
   //更新超文本,可以解析html文本标签
   div1.innerhtml='<strong>添加超文本</storng>';
   //更新css
   div1.style.color='red';
   div1.style.fontsize='20px';//驼峰命名
   div1.style.padding='2em';

2.1 实战演练

获取id

JavaScript Dom对象的操作

没改之前

JavaScript Dom对象的操作

操作input

JavaScript Dom对象的操作

JavaScript Dom对象的操作

3、删除dom节点

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

let self=document.getelementbyid('p1');//获取删除节点
let father=self.parentelement//获取父节点
father.removechild(self);//通过父节点删除节点

注意:删除节点的时候,子节点数组是在不断地变化,所以不能通过数组静态连续删除,只能多次通过动态删除

4、插入节点

我们获得某个dom节点,假设这个 dom节点是空的,我们通过innerhtml就可以添加一个元素,但是这个dom节点已经存在元素了,就会产生覆盖

 <body>
 
  <p id="p1">java</p>
  <div id="div1">
  <p>javascript</p>
  <p>css</p>
  <p>c</p>
  </div>
 </body>

4.1 把已有的标签进行插入

let a=document.getelementbyid('div1');
let b=document.getelementbyid('p1');
a.appendchild(b);//追加

效果

JavaScript Dom对象的操作

4.2 创建一个新的标签,实现插入

   let a=document.createelement('p');//创建节点 p标签
   a.id='p2';
   a.innertext='hello,小沈';
   let list=document.getelementbyid('div1');//获取div1 id
   list.appendchild(a);//追加子节点
   //创建标签节点
   let a=document.createelement('script');
   a.setattribute('type','text/javascript');

效果:

JavaScript Dom对象的操作

 //创建style标签节点
   let st=document.createelement('style');
   st.setattribute('type','text/css');
   st.innerhtml='body{ background-color:pink;}';
   let hd=document.getelementsbytagname('head')[0];//注意点,head在第0个元素。
   hd.appendchild(st);

效果:

JavaScript Dom对象的操作

4.3 在子节点前插入(insertbefore)

<html>
 <head>
  <meta charset="utf-8">
  <title></title>
 </head>
 <body>
 
  <p id="p1">java</p>
  <div id="div1">
  <p id="px">javascript</p>
  <p id='p2'>css</p>
  <p id="p3">c</p>
  </div>
  <script type="text/javascript">
  //拥有子节点的父节点
  let list=document.getelementbyid('div1');
  let self=document.getelementbyid('p2');
  let befoe=document.getelementbyid('p1');
  list.insertbefore(befoe,self);

  </script>
 </body>
</html>

效果:

JavaScript Dom对象的操作

到此这篇关于javascript dom对象的操作的文章就介绍到这了,更多相关javascript dom对象操作内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!