动态输入框中的字符数

时间:2013-02-28 00:49:42

标签: html css pixel

我有一个特殊的数学问题。我正在使用支持多个设备的HTML / CSS / JS开发混合移动应用程序。因此我没有指定输入框的宽度。

现在我需要截断输入框中的文本,但由于未指定宽度,我无法将文本字段的长度与硬编码值进行比较。然而,我可以得到输入框的长度(在px中),我使用的字体大小是固定的(10像素) 有没有办法计算出一个Xpx输入框可以容纳多少14px字体大小的字符?

1 个答案:

答案 0 :(得分:0)

我过去实现这一目标的方式可能效率不高,但它可以解决问题(仅限于此)。

这里的关键是克隆您的文本并开始对其进行更改。你可以用javascript随时进行克隆。将它放在页面上的一个不可见的div中,然后将文本分成单个字符块。然后可以将每个字符包裹在一个范围内。

然后,下一步是确保您知道输入框的宽度,并从正面开始添加跨度的宽度。这应该只是在自定义“屏幕外”div中获取所有span元素并迭代它们。

一旦你达到了魔法宽度数字(或者超过了它),就会知道你单词中的字符数量可以在框中找到。

当然,你所描述的内容有一点点怪癖,那就是你可能还需要弄清楚你可以装入框中有多少“文字”,并修改你的“总宽度”相应地(如果你有一条100px宽的线,你的最大宽度将是100px,但如果它是3线深,那么最大宽度将是300px)。

正如我所说,这可能不是高效的处理器使用......但它是一种解决方案,并且它不需要您的字体是特定大小或类型。