onclick 获取 textarea 中被点击单词的数量

Onclick get number of clicked word inside textarea

是否可以获取textarea.string中每个单词的个数。 就像,textarea 中的 'I like Apple' 字符串,当我点击 'I' 时,它应该给出 0,'like' ->1 和 'Apple' -> 2。不是字母明智的,单词明智的.

<textarea>I like Apple</textarea>

你也可以根据字符串找到单词number/index:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"> 
</script>
<input type="text" id="checktext" value="This is the string to check words index" />

JS代码:

$(document).ready(function() {
      $("#checktext").on('click', function(e) {
        var text = document.getElementById("checktext").value,
          element = $("#checktext")[0],
          arr1 = text.split(" "),
          length = 0,
          selectIndex = element.selectionStart;
        if (selectIndex == 0){
          console.log(arr1.indexOf(arr1[0]));
        }
        else {
          for (var i = 0; i < arr1.length; i++) {            
            length = length + arr1[i].length + 1;
            if (length == selectIndex) {
              console.log(i + 1);
              break;
            }
          }
        }
      });
    });

希望这能解决您的问题!