我正在尝试使用IE8在输入文本元素中获取非选定文本,我尝试了this并且非常有帮助,但是在没有选择文本的情况下,该函数返回索引字符串的开头和结尾。
如何获取输入文本元素的非选定文本,或者如何知道何时没有选择文本?
使用jQuery也很有帮助。
答案 0 :(得分:0)
如果我理解你的问题,你需要这样的东西:
function getNonSelectedText(){
var elem=document.getElementById('input');
var selection=document.selection;
var range=selection.createRange();
if(range.boundingWidth<1){
return elem.value;
}
var rangePre=range.duplicate();
rangePre.moveToElementText(range.parentElement());// For <textarea>
// rangePre.expand('textedit'); // For <input type=text>
var rangePost=rangePre.duplicate();
rangePre.setEndPoint('EndToStart',range);
rangePost.setEndPoint('StartToEnd',range);
return rangePre.text+rangePost.text;
}