2017-02-25 18 views
0

我正在使用this重复col- *之后的行以重复ng。AngularJS - 如何在窗口调整大小重复ng-repeat中的行

我们借此一步,处理额外的代码,我想与控制器内$(window).width()处理拆分,但我也无法达到这样做......

这里是什么Plunker demo我已经完成了。我已经评论了if条件,现在不适用。

任何人都可以帮助我吗?

+0

调度器不工作。至少在我的FF结束。 –

+0

适合我的好友,也尝试在隐身模式下开放。以防万一这里是链接https://plnkr.co/edit/5gojtzqdJavkBEQLwSeA确保你运行它 –

+0

尝试注入$窗口到您的控制器。有用! – Pengyy

回答

1

你需要注意使用jQuery的窗口调整大小事件,这是你需要什么

$(window).resize(function(){ 


    $scope.$apply(function(){ 
     if ($(window).width() >= 990){ 
     $scope.teamMembers = $scope.chunk($scope.allMembers, 4); 
    } else if ($(window).width() <= 991) { 
     $scope.teamMembers = $scope.chunk($scope.allMembers, 2); 
     } 
    }); 
    }); 

Plnkr

2

你不需要使用角度,jQuery和JavaScript作为一个整体设立将以不同分辨率显示的项目数量。这是一个CSS问题。
除此之外,你可以使用jQuery Angular在directive,而不是在controller。该控制器不用于DOM操作,因为它必须是特定模块的业务逻辑。
Angular有一个内置的angular.element(如果jQuery可用),它是jQuery函数的别名。它将原始DOM元素或HTML字符串包装为jQuery元素。如果jQuery不可用,angular.element委托给AngularJS内置的jQuery子集,名为jQuery litejqLite
你可以阅读更多关于在Angular here中使用jQuery的信息。

$window 

是角服务,参照浏览器的window对象。您应该将其注入到控制器中,以便在控制器的功能中使用它。

相关问题