我想在angular jqLite或jQuery中一次添加和删除3个类。
目前我的代码如下:
$(element).addClass('x')
$(element).addClass('y')
$(element).removeClass('z')
这样做效率不高
我正在寻找一次更新dom的方法。在我编写自己的方法之前,尝试使用RegExp
实现它$(element).updateClass({add: ['x','y'], remove: ['z']}
我想知道是否已经有一个我错过的解决方案更容易,并且会给我控制我想要的类操作。
答案 0 :(得分:8)
我最初将此作为评论发布, 但既然你收到了错误的答案,我也会在这里发布。
$(element).toggleClass('x y z');
答案 1 :(得分:1)
我认为你想要ng-class
属性:
<p ng-class="{x: if_x, y: if_y, z: if_z}">text</p>
在您的控制器中,将$scope.if_x
设置为true以启用课程x
,依此类推。
使用Angular的重点是避免在代码中设置DOM属性,而是使用Angular属性来控制DOM。
答案 2 :(得分:-1)
$(元素).addClass( 'X')removeClass( 'Y');
答案 3 :(得分:-1)
角度解决方案
将类设置为变量:
<div class="{{myclass}}"></div>
然后只需将变量更新为您想要的
$scope.myclass = "x y";
答案 4 :(得分:-2)
$(element).switchClass(&#39; z&#39;,&#39; x y&#39;,0);