[英]Fit textarea width to the longest line of text
用戶輸入時,如何使文本區域增加WIDTH。 基本上,我需要將textarea的WIDTH設置為最長行的長度。
這就是我想出的。 但是,當用戶按下ENTER鍵時,寬度仍然增加。 如何使文本區域僅適合其文本大小?
$(document).on("click blur keyup", ".fT", function() {
var newWidth = ($('#tfd').val().length)*10;
$('#tfd').width(newWidth);
});
正如@progrAmmar所提到的, $('#tfd').val().length
tfd $('#tfd').val().length
衡量文本的總長度,而不是最長行的寬度。
實際上,您的newWidth
只是一個近似值,如果用戶鍵入非ASCII字符,則將根本不正確。
近似長度的一種方法是將pre
元素放置在某處,設置visibility:hidden
, font-size
和font-family
與您的文本區域相同,並在用戶鍵入時使用新內容更新該元素。
通過測量該pre
元素的寬度,您可以很好地近似文本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.