Javascript 类交换

Javascript 类交换,javascript,html,angularjs,css,Javascript,Html,Angularjs,Css,我正在使用angular打开和关闭一些面(在标题下打开和关闭),我想知道当我也这样做时,是否有一种方法可以在类之间交换css。这是我正在做的- <form name="metaDeta" id="lessonDetails" class="lessonItem" ng-controller="detailsController"> <div class="small-12 columns"> <div class="lesonHead lessonH

我正在使用angular打开和关闭一些面(在标题下打开和关闭),我想知道当我也这样做时,是否有一种方法可以在类之间交换css。这是我正在做的-

<form name="metaDeta" id="lessonDetails" class="lessonItem" ng-controller="detailsController">
    <div class="small-12 columns">
    <div class="lesonHead lessonHeadOpen saDetailsHead" ng-click="showDetails = ! showDetails"  ng-class="myVar">

            <h5>Lesson Details</h5>
        </div>
        <div class="lessonSASlider" ng-show="showDetails">

课程详情
这对于打开和关闭表单很有效,但是有一个类。lessonHeadOpen,我想尝试在它之间切换。lessonHeadClosed。因此,基本上,我正在寻找类似addClass/removeClass的东西,甚至在用户打开和关闭元素时,可以单击在元素上的两个类之间切换。这在有角度的情况下是可能的吗?我可以把我拥有的东西处理掉吗?或者我必须重新构建。谢谢

您可以使用进行切换。
只需添加一个类出现的条件,它将基于该条件

ng-class="{'className': shouldShowClass}"

可以使用ng类根据表达式的结果动态添加类


课程详情
此指令将计算showDetails表达式,如果为true,则将应用类
className

更新:

如果我理解正确,请执行相同的操作,但反转表达式,以便如果未显示详细信息,则添加一个类,然后当显示详细信息为true时,将删除该类并添加另一个类


您可以使用
ng类的三元运算符表示法:

<div ng-class="showDetails? 'lessonHeadOpen': 'lessonHeadClosed'>...</div>

这太棒了,不过我希望尝试在类之间切换。因此,它可以摆脱旧的阶级和取代。我正在寻找jquery中removeClass('oldClass')和addClass('newClass')的效果,以获得在它们之间切换的效果,这样我就可以用不同的css类交换图像和其他一些东西。谢谢
<div ng-class="showDetails? 'lessonHeadOpen': 'lessonHeadClosed'>...</div>