AngularJs 切换 ng-class ng-click [英] AngularJs toggle ng-class ng-click

查看:36
本文介绍了AngularJs 切换 ng-class ng-click的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

谁能为这个 JSFiddle 提供正确的方法:

Can anyone offer the correct approach to this JSFiddle:

<style>
 .red #btn{
     background-color:red;
  }

 .blue #btn{
    background-color:blue;
  }
 </style>

 <body ng-app="ap" ng-controller="con">
    <button id="btn" ng-click="changeClass()">Change Class</button>    
 </body>

 <script>
  var app = angular.module("ap",[]);

  app.controller("con",function($scope){

  $scope.class = "red";

  $scope.changeClass = function(){
     if ($scope.class === "red #btn")
         $scope.class = "blue #btn";
      else
         $scope.class = "red #btn";
   };
 });

 </script>

JsFiddle 链接

我正在尝试通过 .class & 更改元素的类#ID.

I am trying to change the class of an element via .class & #ID.

提前致谢

感谢 tymeJV,新的 JSFiddle:

解决方案

推荐答案

正确的方法是使用基于切换变量的 ng-class,考虑:

The correct approach would be using ng-class based on a toggle variable, consider:

CSS:

.red {
    color: red;
}

JS:

$scope.toggle = false;

HTML:

<button id="btn" ng-click="toggle = !toggle" ng-class="{'red' : toggle}">Change Class</button>

ng-class 的工作原理是根据变量(toggle")是 true 还是 分配引用的类(在上面的红色")>假.

ng-class works by assigning the referenced class (in the above, "red") based on if the variable ("toggle") is true or false.

这篇关于AngularJs 切换 ng-class ng-click的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆