如何获取由angularjs生成的元素的创建事件?

时间:2014-10-12 11:32:25

标签: javascript angularjs

我使用ng-repeat生成一些html元素。像这样:

<textarea ng-repeat="t in tips">{{t.content}}</textarea>

然后我想根据t.content调整所有textarea的高度。 和textarea宽度是固定的,我该怎么办?

1 个答案:

答案 0 :(得分:1)

你应该为此写一个指令。也许类似于这个基本的:

app.directive('adjustHeight', function($timeout) {
    return {
        link: function(scope, element) {
            $timeout(function() {
                element[0].style.height = element[0].scrollHeight + 'px';
            });
        }
    };
});

并像这样使用它:

<textarea ng-repeat="t in tips" adjust-height>{{t.content}}</textarea>

当然,这很天真,但你可以理解。当然,如果您需要动态调整大小,您可以在其上构建更复杂的东西。

演示:http://plnkr.co/edit/UDCjfQpXjhA4ISioq28W?p=preview