当前位置: 首页 > article >正文

Javascript第十二个知识点:Dom

  • Dom --> document object model 文档对象模型

  • 我们编写的HTML代码中,有许多标签,body、h1、p、div……都可以成为节点。

  • 我们操控dom节点就是使用javascript去操控html里的每一个标签

那么我们该怎么操作dom节点呢?

获取dom节点

  • 首先我们应该获取dom节点

var h1 = document.getElementsByTagName("h1");//通过标签名获得节点
var x = document.getElementById("x");//通过id获得节点
var y = document.getElementsByClassName("y");//通过class获得节点
​
var father = document.getElementById('father');//获得父亲姐弟啊
var childern = father.children;//通过父亲节点获得所有子节点

改变dom节点内容:

father.innerText = '你好,我是div';
father.style.background = 'orange';

删除dom节点:

<div id="father">
      <h1>你好,java</h1>
      <h2 id="x">用id得到节点</h2>
      <h3 class="y">用class得到节点</h3>
</div>
<script>
      //删除节点
      var father = document.getElementById('father');
      var son = document.getElementById('x');
      father.removeChild(son);
</script>

创建节点:

   <div id="father">
            <h1>你好,java</h1>
            <h2 id="x">用id得到节点</h2>
            <h3 class="y">用class得到节点</h3>
            <h4 id="h4">第四个节点</h4>
        </div>
         <script>
            //创建一个新节点
            var hello = document.createElement('p');
            hello.id = 'hello';
            hello.innerText = 'hello world';
            var father = document.getElementById('father');
            var h1 = father.children[0];
            father.insertBefore(hello,h1);
         </script>
//此外创建如script、body这样的节点,我们需要给他说明类型:
        <script>
            var sc = document.createElement('script');
            sc.setAttribute('type','text/javascript');
        </script>
​

整体步骤就是:

  1. 使用createElement创建新节点

  2. 给新节点赋予属性(id、type···)

插入节点:

<p id="z">我是新来的节点</p>
        <div id="father">
            <h1>你好,java</h1>
            <h2 id="x">用id得到节点</h2>
            <h3 class="y">用class得到节点</h3>
            <h4 id="h4">第四个节点</h4>
        </div>
         <script>
            //在某个节点之前插入一个节点
            var new_node = document.getElementById('z');//新节点
            var x = document.getElementById('x');
            var father = document.getElementById('father');
            father.insertBefore(new_node,y);
         </script>

整体步骤就是:

  1. 拿到新节点

  2. 找到父节点

  3. 拿到目标节点

  4. 将新节点用insertbefore放在目标节点前面


http://www.kler.cn/a/231666.html

相关文章:

  • 在 Spark RDD 中,sortBy 和 top 算子的各自适用场景
  • Acrobat Pro DC 2023(pdf免费转化word)
  • 【爬虫实战】抓取某站评论
  • python核心语法
  • torch.stack 张量维度的变化
  • 如何使用 XML Schema
  • 前端开发:(三)CSS入门
  • 【GAMES101】Lecture 17 材质
  • MySQL进阶查询篇(2)-索引的优化和使用场景
  • C语言什么是悬空指针?
  • 6.electron之上下文隔离,预加载JS脚本
  • Windows搭建Emby媒体库服务器,无公网IP远程访问本地影音文件
  • MySQL数据库基础与SELECT语句使用梳理
  • DC-7靶机渗透详细流程
  • 案例分享:频域与时域仿真的区别
  • 机器学习1一knn算法
  • 如何使用phpStudy搭建网站并结合内网穿透远程访问本地站点
  • @RequestBody、@RequestParam、@RequestPart使用方式和使用场景
  • 线程之间如何通信?
  • 制作jdk17+pinpoint-agent基础镜像
  • Unity类银河恶魔城学习记录4-1,4-2 Attack Logic,Collider‘s collision excepetion源代码 P54 p55
  • Rust开发WASM,浏览器运行WASM
  • 虚继承 -- 解决菱形继承问题以及无法跨继承访问
  • 【flink状态管理(四)】MemoryStateBackend的实现
  • NDK Could NOT find OpenGL (missing: OPENGL_glx_LIBRARY) Ubuntu
  • VTK 体渲染设置帧率