<html>
<head>
<script type="text/javascript"> function setCaret(textObj){ /** ---------------获得展开之前光标的位置--------------------- */
var oTxt1 = document.getElementById("dis");
var cursurPosition=-1;
var range = null ;
if(!document.all){//非IE浏览器
cursurPosition= oTxt1.selectionStart;
}else{//IE
range = document.selection.createRange();
range.moveStart("character",-oTxt1.value.length);
cursurPosition=range.text.length;
}
alert(cursurPosition);}
</script> <input type="text" name="textfield" style="width:220px;" id="dis" onclick="setCaret(this);"value="abcdefgh" id="text"/>
<br/>
<input type="button" value="插入" onclick="setCaret(this);"/>
</body>
</html>代码如上;问题是在chrome、firefox点击插入都可已获得上边文本中焦点的位置,但是在ie下就不行,在id为“dis”的文本框中添加click事件直接点击也是可以获取的,求解?
iecharacterinputfirefox
<head>
<script type="text/javascript"> function setCaret(textObj){ /** ---------------获得展开之前光标的位置--------------------- */
var oTxt1 = document.getElementById("dis");
var cursurPosition=-1;
var range = null ;
if(!document.all){//非IE浏览器
cursurPosition= oTxt1.selectionStart;
}else{//IE
range = document.selection.createRange();
range.moveStart("character",-oTxt1.value.length);
cursurPosition=range.text.length;
}
alert(cursurPosition);}
</script> <input type="text" name="textfield" style="width:220px;" id="dis" onclick="setCaret(this);"value="abcdefgh" id="text"/>
<br/>
<input type="button" value="插入" onclick="setCaret(this);"/>
</body>
</html>代码如上;问题是在chrome、firefox点击插入都可已获得上边文本中焦点的位置,但是在ie下就不行,在id为“dis”的文本框中添加click事件直接点击也是可以获取的,求解?
iecharacterinputfirefox
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货