javascript 如何让文字大小自适应文本框(急)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 如何让文字大小自适应文本框(急)相关的知识,希望对你有一定的参考价值。

在一个Document中的一个固定大小文本框中,文本的字数是可变的,现已经能在更改文本时自动调整文本大小 ,但在以后加载该Document时文本内容是变了,但文本大小却还保持不变导致文本显示不全
function onSignalChange(evt)

element = evt.getCurrentTarget();
TXT = element.getParentNode();
cond = evt.getValue();
Realen=lenReg(String(cond));
if (Realen>15)

TXT.setAttribute("FontSize",9);

else if (Realen>10)

RealSize=150/Realen;
TXT.setAttribute("FontSize",RealSize.toFixed(1));
alert("pi");

else

TXT.setAttribute("FontSize",14);
alert("pi");




function onLoad(evt)

tgml=evt.getCurrentTarget().getOwnerDocument();
TXT = tgml.getElementById("12");
cond = TXT.getAttribute("Content");
Realen=lenReg(String(cond));
if (Realen>15)

TXT.setAttribute("FontSize",9);
alert("p9");

else if (Realen>10)

RealSize=150/Realen;
TXT.setAttribute("FontSize",RealSize.toFixed(1));

else

TXT.setAttribute("FontSize",14);
alert("pi");



function lenReg(str)
return str.replace(/[^\x00-\xFF]/g,'**').length;

;

加载时有自适应窗口一闪而过,很快字体又变大了,无法显示全部文字

既然已经做到了“在更改文本时自动调整文本大小”,那么你可以在onload事件中把这个操作自动运行一遍,这样当加载该Document时文字大小就会自动改变了:

window.onload = Function()
//这里放入你的“自动调整文本大小”的代码


还有一点要注意:一定要在页面完全加载完毕才进行字体调整,否则就会出现“一闪而过,很快字体又变大了”的情况。所以一定要在window.onload事件中进行。
参考技术A 你想说的效果是什么?
就是文本框宽度不变,但是文本框的内容可能会增加
但是如果字体大小不改变的话就不能把该文本给全部显示出来了。
你想要的就是文本文字内容变长的时候字体自动缩小以适应文字长度?追问

是的

追答

给文本框绑定onchange事件,然后在事件里面写上你说的更改文字大小的代码

参考技术B 这个问题,我也在纠结,,我在用的百分比做的,字, 不能解决 参考技术C 能给出个具体示范代码不

以上是关于javascript 如何让文字大小自适应文本框(急)的主要内容,如果未能解决你的问题,请参考以下文章

java文本框口中怎样设置自适应换行?

文本框宽度可以根据文字长度自适应吗?css怎么写?

实现文本框高度自适应的两种方法

NGUI如何让uilabel框大小随文字增加而变化

iOS 根据给定宽度自适应文字大小

聊技术在Android中实现自适应文本大小显示