2014-09-22 31 views

回答

7

檢查了這一點

http://jsfiddle.net/philfreo/MqM76/

$.fn.textWidth = function(text, font) { 
    if (!$.fn.textWidth.fakeEl) $.fn.textWidth.fakeEl = $('<span>').hide().appendTo(document.body); 
    $.fn.textWidth.fakeEl.text(text || this.val() || this.text()).css('font', font || this.css('font')); 
    return $.fn.textWidth.fakeEl.width(); 
}; 

Calculating text width

+1

謝謝!準確測量的精確策略!對我很有幫助! – 2014-09-22 06:52:44

+0

很高興爲你解決:) – divakar 2014-09-22 07:15:45

+0

我只是在想如何做到這一點,你絕對釘了它。做得好 – doz87 2016-09-30 07:15:32

0

您可以使用$("#chkText").on('input', function(){});如下

JSFiddle Here

<script type="text/javascript"> 
    $(document).ready(function() { 
     $("#chkText").on('input', function() { 
      var lng = $("#chkText").val().length; 
      $("#chkText").width(lng * 10); 
     }); 
    }); 
</script> 

HTML

<input type="text" id="chkText"/> 
0

嘗試調整長度onkeypess或的onkeyup:

甲onkeypress事件的例子。 onkeypress =「this.style.width =((this.value.length + 1)* 5)+'px';」

這應該工作,如果你把它放入輸入標籤。我認爲定義最小/最大寬度將會很好。

相關問題