主要是用来对一些文本对象进行操作.比如你有一大段文字,都在同一个P标签内,但是你只希望通过JS改变其中的一小部分,这时就可以用createTextRange来创建Range对象操作文本.因为默认情况下文本只是文本,并不是对象,要想像操作对象那样操作文本,只能是创建为Range对象.这是要操作的文本就具有了对象的功能和特性了.
比如://验证是否为数字
function checkText(id){
var inputValue=document.getElementById(id).value;
if(inputValue.match( /^[0-9]+\.?[0-9]*$/)){
} else{
alert("请输入整数或小数");
setFocusAfter(document.getElementById(id));
}
}
//获得文本后光标
function setFocusAfter(obj){
var r=obj.createTextRange();
r.moveStart("character",obj.value.length);
r.moveEnd("character",0);
r.select();
}
var r=obj.createTextRange();创建了一个文本对象元素。r.moveStart("character",obj.value.length);更改了它的起始位置。r.moveEnd("character",0);表示它的结束为止。这段函数就是获取文本框的焦点,注意这是文本最后的焦点,".focus()"这是获取最前的焦点。