Cloning elements (bindings and all) in AngularJs
You should do three separate ng-repeats:
<div ng-controller="myController"> <div class="col1"> <img ng-src="/some/{{image.src}}" ng-click="doStuff()" ng-repeat="image in imagesForColOne" /> </div> <div class="col2"> <img ng-src="/some/{{image.src}}" ng-click="doStuff()" ng-repeat="image in imagesForColTwo" /> </div> <div class="col3"> <img ng-src="/some/{{image.src}}" ng-click="doStuff()" ng-repeat="image in imagesForColThree" /> </div></div>
In your controller you should load your images asynchronously and then push them into one of the three arrays depending on its size.