Javascript 是否将空格视为字符?
我正在运行以下代码来根据内容调整输入的宽度。它工作得很好,除非我在末尾添加空格,然后文本从框中向左移动。我怎样才能像对待任何其他字符一样对待空格,这样它就不会打破框Javascript 是否将空格视为字符?,javascript,jquery,Javascript,Jquery,我正在运行以下代码来根据内容调整输入的宽度。它工作得很好,除非我在末尾添加空格,然后文本从框中向左移动。我怎样才能像对待任何其他字符一样对待空格,这样它就不会打破框 $.fn.liquidWidth=函数(文本、字体){ 如果(!$.fn.liquidWidth.fakeEl)$.fn.liquidWidth.fakeEl=$('').hide().appendTo(document.body); $.fn.liquidWidth.fakel.text(text | | | this.val(
$.fn.liquidWidth=函数(文本、字体){
如果(!$.fn.liquidWidth.fakeEl)$.fn.liquidWidth.fakeEl=$('').hide().appendTo(document.body);
$.fn.liquidWidth.fakel.text(text | | | this.val()| | | this.text()| | | | this.attr('placeholder')).css('font',font | | this.css('font');
var width=$.fn.liquidWidth.fakel.width();
if(this.data('liquid-min-width')!=''&&widththis.data('liquid-max-width')){
宽度=此数据('liquid-max-width');
}
如果(宽度<8){
宽度=8;
}
返回宽度;
};
$(文档).on('input','liquid width',function(){
var inputWidth=$(this.liquidWidth();
$(this.css)({
宽度:输入宽度
});
});代码>
键入一些内容,后跟一组空格
这不会按原样工作,因为当您向标准HTML元素添加空间时,无论您在一行中放置了多少个元素,它都只呈现一个元素,这对于例如呈现所有元素的输入来说是非常不同的
要使span
的大小也像输入一样,请使用空白:pre
或者用
堆栈片段
$.fn.liquidWidth=函数(文本、字体){
如果(!$.fn.liquidWidth.fakeEl)$.fn.liquidWidth.fakeEl=$('').hide().appendTo(document.body);
$.fn.liquidWidth.fakel.text(text | | | this.val()| | | this.text()| | | | this.attr('placeholder')).css('font',font | | this.css('font');
var width=$.fn.liquidWidth.fakel.width();
if(this.data('liquid-min-width')!=''&&widththis.data('liquid-max-width'))
{
宽度=此数据('liquid-max-width');
}
如果(宽度<8){width=8;}
返回宽度;
};
$(文档).on('input','liquid width',function(){
var inputWidth=$(this.liquidWidth();
$(this.css)({
宽度:输入宽度
});
});代码>
span{
空白:预处理
}
键入一些内容,后跟一组空格
您必须在span
上设置空白:pre
-然后它就可以工作了