使用指令使所有div都相同

时间:2015-01-09 09:35:27

标签: javascript jquery html css angularjs

我有一个网站,如下所示,

enter image description here

没有正确排列网格。

当我在控制台中执行以下代码时,它正确地形成了网格。

var maxHeight = Math.max.apply(null, $("#activityfeeddetails").find(".course_thumb_outer").map(function (){
                    return $(this).height();
                }).get());

$("#activityfeeddetails").find(".course_thumb_outer").css("height",maxHeight);
执行代码后

屏幕:

enter image description here

问题:如何在angular指令中添加此代码,以便在加载所有数据和模板后执行。

编辑:这是当前指令(不能正常工作),

dwmProfileDirectives.directive('profileActivityFeedTab', ['Activityfeed', function(Activityfeed) {
    return {
        restrict: 'E',
        scope: {
            current:'=current'
        },
        templateUrl:'tabs/dwm-profile-activity-feed.html',
        controller: function($scope) {
            $scope.Activityfeeds = Activityfeed.get();
            $scope.Activityfeeds.$get().then(function(v){
                var maxHeight = Math.max.apply(null, angular.element("#activityfeeddetails").find(".course_thumb_outer").map(function (){
                    return $(this).height();
                }).get());

                angular.element("#activityfeeddetails").find(".course_thumb_outer").css("height",maxHeight);
            });         
        }
    };
}]);

1 个答案:

答案 0 :(得分:0)

您可以通过设置 min-height 属性而不是 heigth 以及所有元素来解决此问题将具有与最大高度元素相同的高度。

所以只需改变这一行:

angular.element("#activityfeeddetails").find(".course_thumb_outer").css("height",maxHeight);

以下内容:

angular.element("#activityfeeddetails").find(".course_thumb_outer").css("min-height",maxHeight);

它应该可以解决问题。