javascript - jquery 如何观察特定选择器在 dom 中的任何变化

标签 javascript jquery

我有一个函数可以在网页上查找类 .dirty 的存在和计数。它必须从某个点开始,但在那个点上,我希望 jQuery 观察 DOM 中的 css 更改并重新运行此函数。这可能吗?我可以为此使用 on() 吗?喜欢:

$(document).on('change','.dirty', dosomething);

尽管我知道这与更改的用途不同。基本上,我想要的更改是“dirty”的任何 addClassremoveClass

示例标记

寻找观察在“顶级菜单”上添加/删除 .dirty 以便我可以传播更改

<div class="top-level-menu dirty" data-menu-global-id="12828">
  <input id="menu-name-global-id-12828" size="30" type="text" value="Some value here">
</div>

最佳答案

.on 非常适合此功能,但我会尝试更具体地说明您期望“.dirty”发生的位置。例如,如果你知道 dirty 只会发生在 nav 中,那么只看 nav。

$('nav').on('change', '.dirty', function(e) {
    doSomething(e); 
});

查看jsFiddle .

关于javascript - jquery 如何观察特定选择器在 dom 中的任何变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12889559/

相关文章:

javascript - 为什么我在 vue.js 中得到 'avoid using JavaScript unary operator as property name'?

javascript - 使用 doubletaptogo.js 单击带有 href ="#nav"的下拉菜单会导致页面跳转

javascript - Firefox 开发工具是否能够捕获所有错误?

javascript - 手动更新 Bootstrap 颜色选择器

javascript - jquery 移动可折叠 ListView 不适用于 li 标签

jquery 通过隐藏其他 div 在 DIV 上切换()

javascript - 从 ng-click $event 获取属性值

javascript - jQuery,选择 Input FILE 并将其设置为另一个 INPUT

javascript - jQuery 数据表 - 始终显示 X 条目中的 1 个

jquery - 显示独立模块未按预期工作