首页 新闻 搜索 专区 学院

IE下设置textarea和input 光标位置

0
悬赏园豆:100 [已解决问题] 解决于 2014-08-13 17:23

求各位大神告知下IE下怎么设置textarea和input的光标位置。http://www.oschina.net/code/snippet_4873_3395 ,这个插件在点击输入框是有效的,但是如果是点击其他按钮,这个就没用了,好像是event.x,event.y的问题,搞了两天了,还是没找到相关资料,跪求~~(主要问题集中在,textarea和input的设置range的方式好像不一样,moveToPoint(x,y)的作用),求详细~~~

问题补充:

范围怎么选择输入框的  value?????最好给出(标准和IE的两种)

三剑客的主页 三剑客 | 初学一级 | 园豆:92
提问于:2014-01-06 18:25
< >
分享
最佳答案
0
/*IE,设置文本元素的光标位置*/
function setTextRangeCursorPos(elementId,idx){
    var elem=document.getElementById(elementId);
    var tempRange=elem.createTextRange();//创建文本区
    tempRange.moveStart('character',5);//设置移动起点
    tempRange.collapse(true);
    tempRange.select();
}
/*Chrome*/
function setTextRangeCursorPos(elementId,idx){

var elem=document.getElementById(elementId);
elem.focus();
elem.setSelectionRange(idx,idx);
}

/*How to use?*/
<input type="text" id="t1" />
<input type="button" value="Test" onclick="setTextRangeCursorPos('t1',2)" />


收获园豆:100
幻天芒 | 高人七级 |园豆:36790 | 2014-01-06 21:01

亲,测试下textarea元素

三剑客 | 园豆:92 (初学一级) | 2014-01-06 21:11

@三剑客: 是一样的哦~

幻天芒 | 园豆:36790 (高人七级) | 2014-01-06 23:40

@幻天芒: 嗯嗯,IE9可以~~~IE9以下不行,还是谢谢了

三剑客 | 园豆:92 (初学一级) | 2014-01-08 18:26

@三剑客: IE8亲测有效,哈哈~(浏览器模式:IE8兼容模式,文本模式:杂项)

幻天芒 | 园豆:36790 (高人七级) | 2014-01-09 09:54

@幻天芒: 问题我已经解决了,谢谢。但还有一个问题不清楚,范围怎么选择输入框的  value?????

三剑客 | 园豆:92 (初学一级) | 2014-01-13 20:49

@三剑客: 指定内容选中???可以搜索指定文本在input中的起点和终点位置,然后选中~

幻天芒 | 园豆:36790 (高人七级) | 2014-01-13 23:12

@幻天芒: 就是不知道怎么指定input  的value啊,貌似range都是dom级别的,而value是dom的一个属性

三剑客 | 园豆:92 (初学一级) | 2014-01-14 10:25

@三剑客:还是没太懂,你想要实现什么? 

幻天芒 | 园豆:36790 (高人七级) | 2014-01-14 12:21

@幻天芒: 用范围操作输入框的value

三剑客 | 园豆:92 (初学一级) | 2014-01-14 21:03

@幻天芒: 用原生的范围

三剑客 | 园豆:92 (初学一级) | 2014-01-14 21:15

@三剑客:上面的代码都是原生的啊~ 

幻天芒 | 园豆:36790 (高人七级) | 2014-01-15 09:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册