我一直在尝试根据开始和结束索引以编程方式在文本区域中选择文本,但由于某种原因,选择被一些字符位置偏移:
我的用户进行了初始手动选择,并将其存储到数据库中。为了获取初始选择的开始/结束位置,我使用此处概述的方法Caret position in textarea, in characters from the start (Answered by Tim Down)
我存储用户所做的选择,当他们返回页面时,我希望在他们之前的选择中默认。
我根据使用 Tim Down 函数提取的存储位置进行选择的代码如下:
function SelectText(start,end) {
var textArea = document.getElementById("textArea");
var inputRange = textArea.createTextRange();
inputRange.collapse(true);
inputRange.moveStart("character", start);
inputRange.moveEnd("character", end - start);
inputRange.select();
}
似乎问题是由换行符/空格引起的。有谁知道如何根据开始和结束以编程方式在 IE 中正确进行选择?