如何使用javaScript或jquery获取文本输入内容宽度

Alf*_*ang 2 html javascript css jquery input

我有一个<input type="text" />标签.

内容可能太多,当内容长度超过输入宽度时,它将水平滚动.

实际上,我想控制标签的宽度,使其根据内容而变化.

那么,有没有办法获得标签的内容宽度?与scrollHeight属性相似?

div*_*kar 8

看一下这个

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();
};
Run Code Online (Sandbox Code Playgroud)

计算文字宽度