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

监听html元素是否被删除,删除之后重新生成被删除的元素

/**
 * 监听水印是否清除和修改
 */
export function watermarkClear() {
  // 添加水印的盒子
  let box: any = document.querySelector('.dplayer-video-wrap')
  // 水印
  let watermark: any = document.querySelector('.dplayer-logo')
  // 观察器的配置(需要观察什么变动)
  const config = { attributes: true, childList: true, subtree: true };
  // 当观察到变动时执行的回调函数
  const callback = function (mutationsList: any, observer: any) {
    watermark = document.querySelector('.dplayer-logo')
    let watermarkImg = document.querySelector('.dplayer-logo img')
    if (!watermark || !watermarkImg) {
      watermark?.remove()
      const div = document.createElement("div");
      div.className = "dplayer-logo"
      div.innerHTML = `<img src="${'/_nuxt/assets/images/AppOverall/watermark.png'}" alt="">`
      box?.appendChild(div)
    }
  };

  // 创建一个观察器实例并传入回调函数
  const observer = new MutationObserver(callback);

  // 以上述配置开始观察目标节点
  observer.observe(box, config);

}

调用

watermarkClear()

监听的元素

这个元素被删除之后在这个父盒子里面重新生成

扩展:

元素加 pointer-events: none; 属性使用开发工具就不能直接点到元素所在的代码位置 


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

相关文章:

  • [运维][Nginx]Nginx学习(1/5)--Nginx基础
  • GaussDB部署架构
  • 字符及字符串(ASCII编码系统)
  • Python多进程间通讯(包含共享内存方式)
  • 【C++】类与对象的基础概念
  • GitLab基于Drone搭建持续集成(CI/CD)
  • PHP悦读随行一键借阅图书小程序
  • 【hot100-java】【环形链表】
  • 代理IP设置后IP不变?可能的原因及解决方法
  • 网站优化与服务器:性能提升的双重奏
  • Orchestrator 与 Mysql 8.0 的兼容性
  • NLP中文本生成任务
  • 【系统规划与管理师】【案例分析】【考点】【答案篇】第6章 IT服务运营管理
  • CSP-J 算法基础 前缀和与差分
  • 计算机毕业设计选题推荐-项目评审系统-Java/Python项目实战
  • 学习使用在windows系统上安装nodejs以及环境配置图文教程整理
  • MongoDB 高级索引
  • linux与unix
  • Ruby 语法概览
  • 《UniVS: Unified and Universal Video Segmentation with Prompts as Queries》要点提炼
  • GitHub上克隆项目
  • maven中的仓库的配置与优先级
  • 287. 寻找重复数(stl法)
  • 滚雪球学SpringCloud[2.3]:服务发现与负载均衡详解
  • 电机驱动开发之主控板
  • Docker 安装配置和基本命令详解以及案例示范