要使用javascript,不能用JScript,因为要支持其他浏览器,比如mozilla
一下在IE中能运行:
// 得到一个文本框控件的当前光标位置
function getPos(obj)// obj is the input element
{
obj.focus();
var workRange=document.selection.createRange();
obj.select();
var allRange=document.selection.createRange();
workRange.setEndPoint("StartToStart",allRange);
var len=workRange.text.length;
workRange.collapse(false);
workRange.select();
return len;
}
// 设置一个文本框控件的当前光标位置
function setCursor(obj,num){
range=obj.createTextRange();
range.collapse(true);
range.moveStart('character',num);
range.select();
}
一下在IE中能运行:
// 得到一个文本框控件的当前光标位置
function getPos(obj)// obj is the input element
{
obj.focus();
var workRange=document.selection.createRange();
obj.select();
var allRange=document.selection.createRange();
workRange.setEndPoint("StartToStart",allRange);
var len=workRange.text.length;
workRange.collapse(false);
workRange.select();
return len;
}
// 设置一个文本框控件的当前光标位置
function setCursor(obj,num){
range=obj.createTextRange();
range.collapse(true);
range.moveStart('character',num);
range.select();
}
解决方案 »
- 用JS清空textarea
- 求一个层中内容加入到文本框中的程序
- 通过JS代码初始化一个控件,在什么地方调用比较好?
- 在线播放多媒体
- JAVACRIPT 怎么实现在一个输入框输入一个文字,在另一个输入框即时输出第一个输入框输入的文字.
- 请问一个关于focus的问题.
- 用VC编的ocx如何在ASP.net页面在JavaScript脚本里调用属性方法事件???
- 我的IE不能javascript 编写的任何函数,请教高手
- 如何将新开页面的链接(文本)导入原页面的文本筐内???
- 如何才能让一个select的不同项传递给不同的Form提交?
- 有关Iframe的一个问题,百思不得其解,拜托各位啦!!!
- 请问mozilla中如何得到文本框中光标的位置?
var ml=obj.value.length;
var pos=0;
var rng=document.selection.createRange();
rng.moveEnd("character",ml);
try{
pos=ml-rng.text.length
}catch(e){}
return pos;
}
是不是document.selection.createRange();这个是微软的扩展(JScript?)我现在不登陆其他网站,所以不可以查询,故这样问,不好意思
var f=document.f;
var t=f.ta;
if(t.setSelectionRange){
var start=parseInt(f.start.value);
var end =parseInt(f.end .value);
t.setSelectionRange(start,end);
t.focus();
f.t.value = t.value.substr(t.selectionStart,t.selectionEnd-t.selectionStart);
} else notSupported();
}
function setProp(id){
var f=document.f;
var t=f.ta;
if(id==0) t.selectionStart = parseInt(f.start.value);
if(id==1) t.selectionEnd = parseInt(f.end .value);
f.t.value = t.value.substr(t.selectionStart,t.selectionEnd-t.selectionStart);
t.focus();
}
function getProp(id){
var f=document.f;
var t=f.ta;
if(id==0) f.start.value = t.selectionStart;
if(id==1) f.end.value = t.selectionEnd;
if(id==2) f.txl.value = t.textLength;
f.t.value = t.value.substr(t.selectionStart,t.selectionEnd-t.selectionStart);
t.focus();
}
f:from
ta: textArea
用上面的方法解决,具体请看:Mozilla Dom Sample Project
http://cgi.din.or.jp/~hagi3/JavaScript/Mozilla/SampleList.cgi?fmt=sidebar