使用angular-masonry捕获layoutComplete事件

时间:2014-09-15 22:05:49

标签: angularjs masonry

我正在使用angular-masonry作为我的一个项目,并将其设置为......

<div id="tile_container" masonry preserve-order column-width="340" reload-on-show masonry-options="{ transitionDuration: '0.2s', gutter: 0 }">
    <div ng-repeat="tile in tiles" class="masonry-brick">
        ...
    </div>
</div>

现在,AngularJS需要几秒钟来获取我tiles对象中的项目,然后让Masonry将它们排出。如何使用此方法从砌体中捕获layoutComplete事件?

2 个答案:

答案 0 :(得分:2)

看看这个:

var $grid = angular.element('#tile_container'); 
$grid.masonry( 'on', 'layoutComplete',
     function( msnryInstance, laidOutItems ) {
        console.log('layoutComplete');
     } );

答案 1 :(得分:0)

在你的控制器中,

$scope.$on('masonry.created', function (evt, element) {
        element.masonry('on', 'layoutComplete', function(instance, items) {
           console.log(instance);
        });
    });

这对我有用。