gpt4 book ai didi

javascript - Angular-masonry - 扩展项目

转载 作者:行者123 更新时间:2023-12-04 23:42:58 24 4
gpt4 key购买 nike

简而言之,我想使用 Angular-masonry 指令 ( http://passy.github.io/angular-masonry/ ) 实现的是这样的:http://codepen.io/desandro/pen/htsui

我尝试了多种不同的方法,但较大的 div 只是散布在下一个 div 的顶部。

这是 HTML:

<div class="row" ng-controller="DemoCtrl">
<div class="span12">
<div masonry >
<div class="masonry-brick" ng-repeat="brick in bricks">
<div ng-class="brick.cssClass" ng-click="changeBrick($index)">
<img ng-src="{{brick.src}}" alt="A masonry brick" >
<span>Here is a load of text to see what fits in here and such </span>
</div>
</div>
</div>
</div>
</div>

这是一段 Angular 代码:

app.controller('DemoCtrl', function ($scope, $timeout,$element) {

..

$scope.changeBrick= function changeBrick(i) {
$scope.bricks[i].cssClass = 'big';
$element.masonry();
$element.masonry('layout');
}
}

样式只是为了测试:

.small{
width: 200px;
background-color: lime;
}

.big{
width: 400px;
background-color: red;
}

现在,div 刚好展开到下一个 div 的顶部 - 我真的希望砌体能够完成它的工作并重新排列其他 div。

最佳答案

尝试广播 masonry.reload 消息让 angular-masonry 刷新布局。我遇到了一个半相似的问题,这似乎有效:https://stackoverflow.com/a/27967782/3191599

function refresh() {
common.$timeout(function () { $scope.$broadcast('masonry.reload'); }, 100);
}

关于javascript - Angular-masonry - 扩展项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18510287/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com