当我怎样才能得到一个待编译DIV的长度Controller
和/或Directive
的.length-wanted
在这种情况下,而不是诉诸$timeout
? 或者是有一个事件告诉我,角的工作全部做完,我可以去得到它的高度/宽度?
<div ng-controller="testCtrl">
<div get-length>
<div class="length-wanted" ng-bind="arr"></div>
</div>
</div>
这里演示: http://jsfiddle.net/luxiyalu/tm54k4je/
因为它可能是其规模可能与调整大小的改变,我最终去用:
<div ng-controller="testCtrl">
<div get-length>
<div class="height-wanted" height="data.height" ng-bind="arr"></div>
</div>
</div>
指示:
app.directive('lengthWanted', function() {
return {
restrict: 'C',
scope: {height: '='},
link: function (scope, element) {
scope.$watch(function() {
return element.height();
}, function(newVal) {
scope.height = newVal;
});
}
};
});
当然,这是检查每元素的高度$digest
。 你可以通过存储优化这种resized
财产scope
,如果它设置为false返回观看的功能。