您的位置:首頁技術文章
文章詳情頁

javascript - js怎么獲取textarea自動換行行數?

瀏覽:110日期:2022-12-12 10:06:48

問題描述

要在textarea中輸入內容,默認為一行,當輸入的內容過多時自動換行,并且高度增加?

問題解答

回答1:

1, 用shadow

<p style='height:0; overflow:hidden;'> <p class='shadow'></p></p><textarea style='overflow:hidden;'></textarea><script> textarea.addEventListener(’input’, function(e) {shadow.innerHTML = this.value.replace(/</g, ’&lt;’).replace(/>/g, ’&gt;’);this.height = shadow.clientHeight + ’px’; });</script>

2, 用 contenteditable 屬性

<p contenteditable='true'>這里的高度會隨內容自動擴展</p>

3, 如果用

textarea.style.height = textarea.scrollHeight + ’px’;

這種形式也可以調整高度, 但換行的時候會有滾動條一閃而逝, 而且高度只會增加沒法減少, 是體驗最差的寫法.

回答2:

給textarea一個oninput事件

<textarea id='text'></textarea>document.getElementById(’text’).style.height = document.getElementById(’text’).scrollHeight + ’px’

類似這樣的

回答3:

http://stackoverflow.com/ques...

回答4:

textarea的總高度(用jQ的element.height(),如果是原生js,請查看手冊的BIF)/ 你定義的行高

標簽: JavaScript
相關文章:
国产综合久久一区二区三区