当前位置: 首页 > 面试题库 >

使用ng-class的AngularJS切换类

仉昂熙
2023-03-14
问题内容

我正在尝试使用切换元素的类 ng-class

<button class="btn">
  <i ng-class="{(isAutoScroll()) ? 'icon-autoscroll' : 'icon-autoscroll-disabled'}"></i>
</button>

isAutoScroll():

$scope.isAutoScroll = function()
{
    $scope.autoScroll = ($scope.autoScroll) ? false : true;
    return $scope.autoScroll;
}

基本上,如果$scope.autoScroll为true,我希望ng-class是icon- autoscroll,如果为false,我希望它为icon-autoscroll-disabled

我现在无法使用,并且在控制台中产生此错误

Error: Lexer Error: Unexpected next character at columns 18-18 [?] in expression [{(isAutoScroll()) ? 'icon-autoscroll' : 'icon-autoscroll- disabled'}].

如何正确执行此操作?

编辑

解决方案1 ​​:(已过时)

<button class="btn" ng-click="autoScroll = !autoScroll">
  <i ng-class="{'icon-autoscroll': autoScroll, 'icon-autoscroll-disabled': !autoScroll}"></i>
</button>

编辑2

解决方案2:

我想更新解决方案Solution 3,因为Stewie提供的应该是使用的一种。对于三元运算符,这是最标准的(对我而言,最容易阅读)。解决方案是

<button class="btn" ng-click="autoScroll = !autoScroll">
  <i ng-class="autoScroll ? 'icon-autoscroll' : 'icon-autoscroll-disabled'"></i>
</button>

转换为:

if (autoScroll == true) ?// use类'icon-autoscroll' ://其他用法'icon- autoscroll-disabled'


问题答案:

如何在ng-class中使用条件:

解决方案1:

<i ng-class="{'icon-autoscroll': autoScroll, 'icon-autoscroll-disabled': !autoScroll}"></i>

解决方案2:

<i ng-class="{true: 'icon-autoscroll', false: 'icon-autoscroll-disabled'}[autoScroll]"></i>

解决方案3(角度v.1.1.4 +引入了对三元运算符的支持):

<i ng-class="autoScroll ? 'icon-autoscroll' : 'icon-autoscroll-disabled'"></i>


 类似资料:
  • 本文向大家介绍angularJs的ng-class切换class,包括了angularJs的ng-class切换class的使用技巧和注意事项,需要的朋友参考一下 在angular中为我们提供了3种方案处理class: 1:scope变量绑定 2:字符串数组形式。 3:对象key/value处理。 第一种我们不推荐使用,看看其他两种解决方案: 字符串数组形式 字符串数组形式是针对class简单变化

  • 问题内容: 任何人都可以为该JSFiddle提供正确的方法: JsFiddle链接 我正在尝试通过.class&#ID更改元素的类。 提前致谢 感谢tymeJV,新的JSFiddle: 解 问题答案: 正确的方法是根据切换变量使用,请考虑: CSS: JS: HTML: 通过根据变量(“ toggle”)是否为或分配引用的类(在上面为“红色”)来工作。

  • 本文向大家介绍详解AngularJS ng-class样式切换,包括了详解AngularJS ng-class样式切换的使用技巧和注意事项,需要的朋友参考一下 整理文档,搜刮出一个详解AngularJS ng-class样式切换,稍微整理精简一下做下分享。 1、HTML 2、controller 3、效果图 4、循环列表,判断索引添加样式 *、 以上就是本文的全部内容,希望对大家的学习有所帮助,也

  • 问题内容: “活动”类的CSS来自引导程序。 因此,切换作品几乎是我想要的。我希望它类似于导航链接中的活动状态,但在我的示例中,它处理图像,因此需要担心url字符串等。 我尝试模拟此示例,但没有用(我尝试了相同的图像逻辑):ng-class突出显示基于ng- repeat的活动菜单项,如果有人能指出我正确的方向,我将不胜感激。:D 问题答案: 在您遇到的情况下,我要做的是在ng-repeat的父范

  • 本章将讨论toggleClass()方法,它是一个有用的新操作类。 toggleClass()方法从匹配元素集中的每个元素添加或删除一个或多个类。 语法 (Syntax) 在jQueryUI的1.0版中添加 toggleClass()方法的基本语法如下 - .toggleClass( className [, switch ] [, duration ] [, easing ] [, comple

  • 本文向大家介绍AngularJS 基础ng-class-even指令用法,包括了AngularJS 基础ng-class-even指令用法的使用技巧和注意事项,需要的朋友参考一下 AngularJS ng-class-even 指令 AngularJS 实例 为表格的偶数行设置 class="striped": 运行结果:   Alfreds Futterkiste Germany Berglun