1

我希望能够在文本输入中的字符串末尾动态插入一个 div。

例如,如果我有一个文本输入...

MyInput: <input type="text" name="myInput" value="" />

...在他们的浏览器中有人键入...

MyInput:  Here is some sample input

我想在输入单词后立即生成 div。

有谁知道如何在文本输入中获取字符串尾端的绝对像素坐标?

谢谢!

4

2 回答 2

0

我不喜欢这样的答案,但是:

您希望它能够跨浏览器和跨平台工作,对吗?IE、Chrome、Firefox、Safari;Windows、Linux、Mac……我非常怀疑我们还没有到达那里。当您进入输入框时,您会进入本机呈现的控件(例如在 IE 上),这会将您带入安装字体和可访问性增强的兔子洞......

除非用例确实是压倒性的,或者有人指出我不知道的功能(并且会很高兴学习),否则我建议从不同的角度处理这个 UI。

于 2010-09-21T16:22:29.287 回答
0

我会尝试使用与输入相同的文本创建一个内联元素,然后计算该元素的宽度并将宽度用作 div 的“左”坐标。

例如:

<input type="text" value="Here is some sample input" />
<span id="clonedInput" style="visibility:hidden">Here is some sample input</span>

您测试宽度和更新跨度文本的功能可能是 onkeypress。如果您将相同的 css 样式应用于跨度作为输入(就字体系列/pt而言),我会看到这种方法最成功

于 2010-09-21T16:56:33.823 回答