使用JavaScript检测和空间

时间:2011-03-15 07:44:09

标签: javascript whitespace html-entities

我正在尝试阅读contentEditable div的内容并提取当前有效的单词。即。刚输入的单词或修改过的单词。

我最初的做法是:

  1. 将字符串设为innerHTML
  2. 使用函数获取光标位置(现在我可以找到被修改的单词)
  3. 向后读,直到找到空格(逐字符比较)
  4. 从找到的空间点提取单词。
  5. 但问题是浏览器有时会将空格转换为 ,有时则不会(如果只有一个空格则没有问题)。然后我决定使用第二个循环来读取5个字符,如果找到a ;并检查它。但这似乎效率很低。那么有更好的方法吗?

3 个答案:

答案 0 :(得分:6)

我找到了解决方法。以前,我使用innerHTML来获取内容。 现在,我正在使用targ.firstChild.nodeValue,其中targ是需要其内容的元素。然后使用 str.charCodeAt(i)==32 || str.charCodeAt(i)==160 进行检查。

这很有效。

答案 1 :(得分:3)

String.fromCharCode(160)为我工作。它代表 字符。如果条件if(str == ' ')没有工作,修剪();但是if(str == String.fromCharCode(160))工作了。

用于检查正常空间使用if(str.trim() == '')

答案 2 :(得分:0)

我认为你在寻找的是non-breaking space in Javascript