Fire事件,如果将确切的类添加到另一个(MutationObserver)

时间:2017-06-07 14:06:03

标签: jquery mutation-observers

我一直在浏览几个关于此的线索,这个:http://stackoverflow.com/a/24284069/663246在某些类更改时工作正常,但我需要更具体的内容:

如果将class1添加到class2,请执行某些操作。

如果删除了class2,请执行某些操作(返回)。

我是否需要在观察者上指定此项,或者我可以在函数上执行此操作吗?

提前谢谢你,

编辑:

谢谢,这听起来不错,但对不起,我有点迷失在这里。这是我到目前为止所得到的:

$(function() {
(function($) {
    var MutationObserver = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver;

    $.fn.attrchange = function(callback) {
        if (MutationObserver) {
            var options = {
                subtree: false,
                attributes: true,
                attributeOldValue: true,
                attributeFilter: ['class']
            };

            var observer = new MutationObserver(function(mutations) {
                mutations.forEach(function(e) {
                    callback.call(e.target, e.attributeOldValue);
                });
            });

            return this.each(function() {
                observer.observe(this, options);
            });

        }
    }
})(jQuery);

$('.white-text').attrchange(function(attrName) {

    if(attrName=='class'){
        $("#about").css( "color", "white" );
    }else{
        $("#about").css( "color", "black" );
    }

});
});

如果将class .active添加到.white-text

,我需要更改#about的颜色

0 个答案:

没有答案