2015-08-28 86 views
0

我有AngularJS指令下列HTML元素:AngularJS納克級的條件

<div class="progress">             
<span ng-repeat="timeRangeObject in timeRangeObjects" style="width: {{timeRangeObject.percentage}}%" ng-class="vm.showVacation == true ? 'progress-bar timerange-{{timeRangeObject.containerType}}' : 'progress-bar timerange-PADDING'" />                    
</div> 

所以我Concat的不同類型/顏色不止一個進度條。 有了這個複選框,我將設置特定的進度條爲透明顏色。

因此,我需要這樣的:

... ng-class="vm.showVacation == true ? 'progress-bar timerange-{{timeRangeObject.containerType}}' : 'progress-bar timerange-PADDING | timeRangeObject.containerType == 'XY''" 

- >所以我需要有關納克級else語句的過濾器。

這可能嗎?重要的是隻有顏色應該改變,但進度條應該保持在原來的位置。

非常感謝

[編輯] 這裏是一個鏈接到我的問題: My Example

回答

0

你有做了很多的事情,是更好,如果你糾正首先是不使用style="width:{{}}"是更好,如果你使用的NG-風格,所以你不必使用托架,並回答你的問題,你可以在你的NG-類這樣寫:

<div ng-class="foo()"> 

JS

$scope.foo=function(){ 
    return /*here you put your condition sorry but i didn't understand 
      the conditions you need*/ 
} 

你也可以用你的風格屬性來做到這一點。

+0

感謝您的回覆。我不知道是否有可能處理這種情況。條件是 - 如果單擊複選框,而不是所有進度條均應爲透明,但JavaScript對象的屬性containerType具有值「VACATION」的屬性的透明度除外。這可能嗎? – quma

+0

是的,你可以在你的複選框中放入ng模型,並在foo()中傳遞變量,如果同意做小提琴我會讓你看到 – mautrok

+0

嗨,非常感謝!這是我的問題:[我的例子](https://jsfiddle.net/zz5z6dor/1/),如果我點擊複選框比我只會顯示假期。 (對不起,但我不能分開腳本和HTML - 它沒有工作 - 我不知道爲什麼) – quma