首页 > 其他分享 >JS监听DOM创建和销毁

JS监听DOM创建和销毁

时间:2023-03-16 10:45:16浏览次数:51  
标签:el observer DOM JS var 节点 document 监听

源码

web开发指南

<!DOCTYPE html>
<html lang="zh">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    <body>
        <script>
            var targetNode = document.querySelector("body");
            var observerOptions = {
                childList: true, // 观察目标子节点的变化,是否有添加或者删除
                attributes: true, // 观察属性变动
                subtree: true // 观察后代节点,默认为 false
            }

            var observer = new MutationObserver(function(mutationList, observer) {
                mutationList.forEach((mutation) => {
                    console.log(mutation)
                });
                console.log(observer)
            });
            observer.observe(targetNode, observerOptions);

            /**
             * 创建节点
             */
            const createEl = () => {
                let el = document.createElement('div');
                el.className = 'preRenderContainer'
                el.append(new Text('我是动态添加的节点'));
                document.body.append(el)
            }

            /**
             * 删除节点
             */
            const deleteEl = () => {
                document.getElementsByClassName('preRenderContainer')[0].remove();
            }
        </script>
        <button onclick="createEl()">创建DOM</button>
        <button onclick="deleteEl()">删除DOM</button>
    </body>
</html>

效果图

 

标签:el,observer,DOM,JS,var,节点,document,监听
From: https://www.cnblogs.com/bxmm/p/17221405.html

相关文章

  • JS中对象解构时指定默认值
    待解构字段为原始值正常情况下constobj={a:1,b:2};const{a,b}=obj;console.log(a,b);//12当被解构字段缺失时constobj={a:1,};const{a,......
  • 6_JSTL格式化标签
    ​ JSTL格式化标签格式化标签库格式化标签库,也叫作fmt标签,是JTSL中的第二大组成部分,主要解决数据显示格式问题,让JSP页面的数据格式更加规范格式化标签库导入的语......
  • 6_JSTL格式化标签
    ​ JSTL格式化标签格式化标签库格式化标签库,也叫作fmt标签,是JTSL中的第二大组成部分,主要解决数据显示格式问题,让JSP页面的数据格式更加规范格式化标签库导入的语......
  • 使用 Filebeat 监听日志文件
    Filebeat是一个日志文件托运工具,在你的服务器上安装客户端后,filebeat会监控日志目录或者指定的日志文件,追踪读取这些文件(追踪文件的变化,不停的读),并且转发这些信息到elastic......
  • npm和node.js安装与环境配置
    nodejs和npm的关系node.js是javascript的一种运行环境,是对GoogleV8引擎进行的封装,是一个服务器端的javascript的解释器。npm是nodejs的包管理器(packagemanager)。nodej......
  • JS当前时间(可直接复制使用)
    1<divclass="showTime"></div>2<script>3vart=null;4t=setTimeout(time,1000);//開始运行5functiontime(){6......
  • Vue.js 计算属性(p18~p20)
    视频18视频19视频20姓名案例_插值语法实现<!DOCTYPEhtml><html> <head> <metacharset="UTF-8"/> <title>姓名案例_插值语法实现</title> <!--引入Vue-->......
  • Node.js 微服务 All In One
    Node.js微服务AllInOneNest.js微服务(......
  • js快速入门
    前言之前曾学习了html和css,在学js的时候懈怠了,如今大三不得不面对自己web网页做不出来的现实,所以又前来学习web。因为之前js没有怎么学,所以直接从js开始了。不过js需要htm......
  • SSM jsp众筹平台
    SSMjsp众筹平台系统功能首页登录注册图片轮播新闻公告众筹资讯网站公告众筹项目发起众筹 在线留言关于我们合作伙伴后台管理首页系统用户管理新闻数据管......