JQuery不在$(document).change()上执行

The*_*max 9 css asp.net-mvc jquery

我需要在页面/文档发生变化时执行一些JQuery - 在这种情况下,当显示具有特定CSS类的div时.

我有以下JQuery代码:

   <script>
           $(document).change(function () {
               if ($('.validation_errors').length) {
                   alert("test");
               }
           }
    </script>
Run Code Online (Sandbox Code Playgroud)

但是,它不会执行并显示警报.我在这里错过了什么吗?

noj*_*noj 22

更改仅适用于input,textarea或select元素.相反,您需要将函数绑定到DOMSubtreeModified突变事件:

$(document).bind('DOMSubtreeModified', function () {
   if ($('.validation_errors').length) {
       alert("test");
   }
});
Run Code Online (Sandbox Code Playgroud)

编辑:如果您的目标浏览器支持它,您应该使用MutationObserver.