Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用变异观测器检查div是否有类_Javascript_Jquery_Html_Mutation Observers - Fatal编程技术网

Javascript 使用变异观测器检查div是否有类

Javascript 使用变异观测器检查div是否有类,javascript,jquery,html,mutation-observers,Javascript,Jquery,Html,Mutation Observers,我在div中有一个菜单,默认情况下是关闭/隐藏的。当我单击它时,它会打开,并向其中添加打开的类 <ul class="mydropdown-menu"> <li>Item</li> <li>Item</li> <li>Item</li> </ul> 项目 项目 项目 当菜单可见时,更改为 因为这是动态发生的,所以不能使用普通jquery的hasClass来确定它是否存在

我在div中有一个菜单,默认情况下是关闭/隐藏的。当我单击它时,它会打开,并向其中添加打开的类

<ul class="mydropdown-menu">
    <li>Item</li>
    <li>Item</li>
    <li>Item</li>
</ul>
  • 项目
  • 项目
  • 项目
当菜单可见时,更改为

因为这是动态发生的,所以不能使用普通jquery的
hasClass
来确定它是否存在

我听说了突变观察者,并尝试了一些在互联网上找到的例子,但对我来说似乎没有任何效果

有人能帮我做到这一点吗


我只需要知道每次我的菜单的
ul
元素打开/添加打开的类时,使用的是变异观测者。如何使用jQuery实现这一点?

您当然可以使用MutationObserver实现这一点(有关如何实现的说明,请参阅副本),但这实际上是最后的手段。如果您的代码控制此菜单何时打开,则应在此处添加功能。如果它是第三方库,那么检查它们不会引发任何你可以钩住的事件。这是一个简单的引导导航栏。它切换名为open的类以更改状态。这个问题实际上对我一点帮助都没有。因此,如果您正在使用引导,那么导航栏将使用标准的可折叠事件模型,例如
show.bs.collapse
:,那么任何帮助都将非常有用。关于复制,它展示了一个完整的工作示例,说明了如何设置一个变异观察器来检测类的变化。我不知道它能有多明确。