2017-01-25 6 views
0

私は素晴らしいUIエクスペリエンスを作成するためにテキストエリアの自動サイズ設定機能に取り組んでおり、見つかった設定に問題があります。 ボックスサイズを角度で拡大しない自動サイズ調整

私はオンラインここで、この作業バージョンが見つかりました:

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

input[0]textareaSize

input 。 – MannfromReno

+0

@MannfromReno申し訳ありませんが、間違ったリンクがありました。私はそれを正しいものに編集したか、または3から4に更新したバージョンを変更しました。 –

+0

'$ log.log(input.value)'を試しても何もログに記録されません – MannfromReno

答えて

1

は、入力の値を取得し、あなたが使用する必要があります:

input[0].value

ので、これはから変更されます: `例外RangeError:最大コールスタックサイズexceeded`は、このよりに探しコンソールエラーを取得しているように見えますtextareaSize[0]

関連する問題