jQuery .addClass() 不适用于 Angular.js

jQuery .addClass() not working with Angular.js

本文关键字:适用于 Angular js 不适用 addClass jQuery      更新时间:2023-09-26

在我的代码中,我做到了

element.attr('class', element.attr('class') + ' state-active');

并且类.state-active被添加到元素中。

但是当我尝试时

element.addClass('state-active');

什么也没发生。

它不起作用,如果我得到其中任何一个元素都没有关系:

var element = $('.state');
var element = angular.element($('.state'));
var element = angular.element($('.state')[0]);

我尝试了我能想象到的一切,但没有一个足够。我注意到.css()也不起作用。

什么可能导致此问题,我该如何解决此问题?目前我的代码正在工作,但该解决方案并不优雅......

与其使用jQuery,不如尝试从不同的角度(没有双关语!)来解决问题,例如使用ngClass。这允许您使用数据绑定根据条件设置类。通常这样更好,让 Angular 做实际更改 DOM 的具体细节。