当前位置: 首页 > 面试题库 >

DOM突变事件替换

谢涵煦
2023-03-14
问题内容

由于DOM突变被w3c标记为已弃用,因此存在一种(快速)替代方法来检测属性修改在DOM中?


问题答案:

据我所知,还没有其他选择,因此您DOMAttrModified只能使用Firefox和Opera支持的方法。在IE中,您有onpropertychanged活动,但是无法在Chrome
/ Safari中获得类似的功能。根据您要完成的任务和目标浏览器,您可以做很多事情:

  • 为要监视的属性定义获取器和设置器
  • 重写方法一样document.createAttributeattributes.setNamedItem

我本人一直在从事跨浏览器解决方案的工作,但没有取得太大的成功。您应该一起避免突变事件,因为它们不是跨浏览器的,而且速度很慢。不推荐使用它们是有充分的理由的。



 类似资料:
  • DOM 事件流描述了 DOM 时间响应的阶段、路径。 DOM 事件流也会被称为 DOM 事件模型。 1. 事件流阶段 事件流有三个阶段: 捕获阶段 从window开始,寻找触发事件最深层的节点,过程中如果有节点绑定了对应事件,则触发事件 目标阶段 找到事件触及的最深节点 冒泡阶段 从最深节点按照捕获的路径进行返回,过程中如果有节点绑定了对应事件,则触发事件 现代浏览器默认都会在冒泡阶段触发事件。

  • 事件是您在编程时系统内发生的动作或者发生的事情,系统通过它来告诉您在您愿意的情况下您可以以某种方式对它做出回应。例如:如果您在网页上单击一个按钮,您可能想通过显示一个信息框来响应这个动作。在这篇文章中我们将围绕事件讨论一些重要的概念,并且观察它们在浏览器上是怎么工作的。这篇文章并不做彻底的研究仅聚焦于您现阶段需要掌握的知识。—— MDN 事件即某个情况、某个事情。 当按钮被点击 视频播放、暂停 关

  • Event 对象代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。(W3C) 事件对象会在事件被触发时获得,对象包含了当前事件的一些信息,如点击事件可以获取到点击的位置,键盘输入事件可以获取到按下的键。 1. 获取事件对象 在给 DOM 节点绑定事件时,需要传递一个事件处理器,其本质上是个函数,在事件触发时被调用。 在事件处理器被调用时,默认就会传递一个参数,这

  • DOM 提供了许多事件供开发者进行绑定,以响应各种操作,丰富页面交互。 想要触发事件,就得先给 DOM 节点绑定事件,提供事件处理器。 1. 直接在 HTML 上提供事件 这种方式是将事件内联在 HTML 代码中。 案例演示 预览 复制 复制成功! <style> .box { width: 100px; height: 100px; background: green

  • 1.冒泡型事件 浏览器的事件模型分两种:捕获型事件和冒泡型事件。由于ie不支持捕获型事件,所以以下主要以冒泡型事件作为讲解。 (dubbed bubbling)冒泡型指事件安装最特定的事件到最不特定的事件逐一触发。 <body onclick="add('body<br>')"> <div onclick="add('div<br>')"> <ponclick="add('

  • 问题内容: JavaScript处理事件的优先顺序是什么? 以下是按字母顺序排列的事件… onabort-图像加载中断 onblur-元素失去焦点 onchange-用户更改字段的内容 onclick-鼠标单击对象 ondblclick-鼠标双击一个对象 onerror-加载文档或图像时发生错误 onfocus-元素获得焦点 onkeydown-按下键盘键 onkeypress-按下或按住键盘键