#実現したいこと
前提
div contenteditable
を使って、div
要素をinput
やtextarea
みたいに入力出来るようにしました。
実現したいこと
js側で改行数を5行までに制限して、それ以上超える場合は要素内でスクロールするようにしたい。
困っていること
- js側で、改行数を指定しているのに制御出来ない
- 改行したときにフォームの幅が変わらなく困っています。
色々私なりに試してはいるのですが、どうしても意図した動きにならないです。
何かご教示いただけると幸いです。
html
1<div aria-multiline="true" class="txt-area" contenteditable="true" id="dmComposerTextInput" role="textbox" spellcheck="true" tabindex="0" style="outline: none; user-select: text; white-space: pre-wrap; overflow-wrap: break-word;"> 2</div>
css
1.txt-area{ 2 background: lightgray; 3 line-height: 30px; 4 font-size: 20px; 5 height:30px; 6 width:200px; 7 border: 2px solid; 8 border-color: #1da1f2; 9}
js
1 var tBox = document.getElementById("dmComposerTextInput"); 2 tbox.on("keyup", function () { 3 if (tBox.innerText.length > 5) { 4 tBox.prop("contenteditable", false); 5 } 6 });
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/11/11 04:09
2019/11/11 04:12