【发布时间】:2013-01-10 04:47:55
【问题描述】:
我一直在编写一些代码,可以在您在文本区域中键入时修改克拉位置。对于大多数浏览器,换行符是“\n”,但在 IE 8 及以下版本中,换行符是“\r\n”,它的长度是正常换行符的两倍。在设置我的克拉位置时,我该如何解释这种差异?我找到了这个resource,但我不确定如何实施它来纠正我的问题。我认为这就像在将“\r\n”剥离为“\n”之后计算换行符的数量一样简单,然后将该数量乘以 2 并将其添加到我的克拉位置,但它不起作用。
小提琴:http://bit.ly/TAQxiV P>
第 67-116 行用于获取和设置克拉位置和 textarea 内容。
【问题讨论】:
-
做得好,IE中的输入(字符数)和输出(光标位置)都必须更大,所以不清楚为什么需要任何特殊处理。也许你可以澄清你的确切问题是什么?
-
无论如何,如果你从文本中去掉所有
\r,你应该只添加他们的号码一次。 -
我尝试通过 get 方法从 editors 值中删除 \r,但它仍然无法正常工作。如果您在 IE8 中尝试使用 Fiddle,您会发现问题,克拉几乎从未插入到正确的空间中
-
小提琴太长了,在调试中没有多大用处,尤其是在没有 IE8 的情况下(我认为大多数人没有)。您应该找到确切返回错误结果的部分,并创建一个测试用例。
标签: javascript textarea newline