【发布时间】:2015-09-29 11:30:33
【问题描述】:
我正在尝试使用 ng-style 设置列表中每个项目的 z-index 和左边距。列表项显示为卡片,当它们堆叠时,它们看起来像堆叠的卡片。
对于 z-index
- 计算干预卡
- 为顶部卡片指定与卡片总数相等的 z-index。
- 其他卡片的 z-index 数字应该比它上面的数字低一个。
对于左边距
- 每张卡片的左边距应比其上方的卡片多 5 像素。
这一切看起来如何:
堆叠(看起来像垃圾) http://i.imgur.com/Vy9knsI.png
但应该是这样的 http://imgur.com/YXngp3A,eCjoKwd,Vy9knsI#0
我尝试编写一个函数来设置 z-index,但它不起作用。我可能已经走了。
控制器
(function() {
'use strict';
angular
.module('casemanagerApp')
.controller('CasePlanGoalsCtrl', CasePlanGoalsCtrl);
function CasePlanGoalsCtrl(lodash, Restangular, getDomainsResolve, getGoalsResolve, getInterventionsResolve) {
var vm = this;
var _ = lodash;
// Injections
vm.domains = getDomainsResolve;
vm.allGoals = getGoalsResolve;
vm.allInterventions = getInterventionsResolve;
// Functions
vm.domainInterventionCount = domainInterventionCount;
angular.forEach(vm.domainInterventionCount, function (value, key, card) {
var i = 1;
card.zIndex = {'z-index' : i++};
});
function domainInterventionCount(goalId) {
return _.size(_.filter(vm.allInterventions, {'goalId': goalId}));
}
}
})();
查看
<!-- This is inside an ng-repeat-->
<div class="card" ng-style="card.zIndex()">
...
</div>
【问题讨论】: