テキストエリア要素に自動拡張アニメーション効果のクラスを追加しようとしています。特定のアクションでjavascriptを使ってcssアニメーションを実行
デモ: http://jsfiddle.net/d0kmg7d3/15/
var tx = document.getElementsByTagName('textarea');
for (var i = 0; i < tx.length; i++) {
tx[i].setAttribute('style', 'height:' + (tx[i].scrollHeight) + 'px;overflow-y:hidden;');
tx[i].addEventListener("input", OnInput, false);
}
function OnInput(e) {
this.style.height = 'auto';
this.style.height = (this.scrollHeight) + 'px';
}
私は高さがトリガされたときにのみアニメーションを切り替えることができますか?この線に沿って 何か:
this.classList.toggle("horizTranslate")
が、どのように高さが変更されたとき、私は検出していますか?
あなたは高さとはどういう意味ですかがトリガされますか?テキスト領域のテキストがボックスの高さを超えている場合は意味しますか? – Vincent1989
そのデモでは、新しいテキストが追加されるとテキストエリアが増加します。私はその瞬間にアニメーション/クラスを追加しようとしているので、テキストボックスはジャンプしませんが、スムーズに高さが変わります。それは理にかなっていますか?。 – user2513846