我正在尝试使用AngularJS创建随机大小的twitter bootstrap divs(.childBox)。
<div ng-controller="HomeCtrl">
<div class="motherBox" ng-repeat="n in news">
<div class="childBox" class="col-md-{{boxSpan}} box">
<a href="#" class="thumbnail">
<img src="{{holderLink}}" height="200px" alt="100x100">
<p class="tBlock"> {{n.title}} </p>
</a>
</div>
</div>
</div>
controller('HomeCtrl', ['$scope', '$http', function($scope,$http) {
$http.get('news/abc.json').success(function(data) {
$scope.news = data;
});
$scope.holderSize = 150;
$scope.holderLink = 'http://placehold.it/'+$scope.holderSize+'x'+$scope.holderSize;
$scope.boxSpan = getRandomSpan();
function getRandomSpan(){
return Math.floor((Math.random()*6)+1);
};
}])
我想为每个.childBox div创建不同的整数值boxSpan,但所有.childBox都具有相同的boxSpan值。尽管每次刷新页面时,boxSpan会创建随机值。
如何为每个ng-repeat迭代生成不同的/随机值?
ng-init='rand = getRandomSpan()'
,在class中使用class="col-md-{{rand}} box"
。该方法可以使生成的随机数字作为列宽度的一部分,从而避免内容溢出问题。 - egor.xyz