自动调整大小而不是以角度扩展框大小

时间:2017-01-25 20:10:13

标签: javascript css angularjs

因此,我正在开发textareas的自动调整功能,以创建一个不错的用户界面体验,而且我遇到了一个我找到的设置问题。

我在网上找到了这个工作版:

http://www.brianchu.com/blog/2013/11/02/creating-an-auto-growing-text-input/

显然你可以看到这个有效。所以我将它转换为棱角分明,并且一直在弄乱它,但我不确定我在做什么是不正确的。

我正在使用它作为指令,并且我在编译时运行所有代码,因此应该将所有元素和对象顺利地放在一起吗?

我已将我的"正在进行中"下面的代码以及小提琴的位置,我已经吐了所有这些。

拨弄

https://jsfiddle.net/Mr_Pikachu/snszc0Lu/4/

当前代码

var a = angular.module('app', []);
a.directive('autoGrow', function($log, $compile, $document){
    return {
        compile : function(elem, attrs){

            // define variable and function
            var textContainer, textareaSize, input;


            // set the parent class and recompile
            input = angular.element('<textarea class="textarea-autogrow"></textarea>');
            textareaSize = angular.element('<div class="textarea-size"></div>');
            elem.append(input);
            elem.append(textareaSize);
            elem.addClass('textarea-container');

            var autoSize = function(){
                $log.log('fired');
                textareaSize.innerHTML = input.value + "\n";
            };
            autoSize();
            input.bind('input', autoSize);
        }
    };
});

1 个答案:

答案 0 :(得分:1)

当我们谈到您的问题是获取输入值时,您应该使用:

input[0].value

所以这将改为:

inputinput[0]textareaSizetextareaSize[0]