根据点击更改ng-class

时间:2015-01-27 09:43:46

标签: jquery html angularjs

我想在用户点击另一个元素时更改元素的类。

首先我有这个范围:

<span class="yesterdaysValue">{{category.content.Value}}</span>

第二个我有一个img属性,它根据控制器中声明的函数获取它的类(工作正常)

<img ng-class="{true: getArrowClass(category.content.Value, category.content.ValueOneWeekAgo)}[true]" ng-src="{{getArrowSrc(category.content.Value, category.content.ValueOneWeekAgo) }}" />

我想要的是当我单击span中的文本时,我想更改img属性的类。如果可能,我想使用我的getArrowClass,但我不知道如何做到这一点。

$scope.getArrowClass = function (value, valueOneWeekAgo) {
        return value >= valueOneWeekAgo ? 'greenArrow' : 'redArrow'
    }

1 个答案:

答案 0 :(得分:0)

好吧,既然你需要的是使角度做另一个摘要,你可以在你的范围内放置ng-click基本上什么也不做(或几乎什么都没有)但是它足以触发摘要并因此重新计算你的形象的类:

<span class="yesterdaysValue" ng-click="click = !click">span</span>

我做了一个显示目的的通用小提琴。 (在我的someFunc方法中,它只返回范围的变量,在你的情况下,它将执行实际的方法。)

JS Fiddle