编程语言
首页 > 编程语言> > 如何在Javascript中找到选择文本的开头和结尾位置?

如何在Javascript中找到选择文本的开头和结尾位置?

作者:互联网

我试图找到选择的文本开始和结束.所以,在下面的文字中,如果我从“Hello,world!这是多么美好的一天!”中选择“世界!真是太好了”,我应该得到7作为起始坐标,24作为结束坐标假设一个零基指数.

这怎么可以实现?

编辑:
我希望找到不在任何< input>内的文本选择或< textarea>元素.

编辑:
决定使用禁用< textarea>的解决方案

解决方法:

我用这个:

/* Returns 3 strings, the part before the selection, the part after the selection and the selected part */
function getSelected()
{
  var u     = editor.val();
  var start = editor.get(0).selectionStart;
  var end   = editor.get(0).selectionEnd;

  return [u.substring(0, start), u.substring(end), u.substring(start, end)];
}

编辑器是$(“#editor”)或textarea / input字段可能具有的任何ID.

用法:

var select = getSelected()
editor.val(select[0] + '<h1>'+ select[2] + '</h1>' + select[1]);

将在H1中包装选定的文本.如果没有选择任何内容,它将只添加空H1,但您可以根据自己的喜好添加检查和功能.

**未在所有浏览器中测试过,但在Chrome中可以使用**

标签:jquery,javascript,selection,html,getselection
来源: https://codeday.me/bug/20190626/1292870.html