求各位大神告知下IE下怎么设置textarea和input的光标位置。http://www.oschina.net/code/snippet_4873_3395 ,这个插件在点击输入框是有效的,但是如果是点击其他按钮,这个就没用了,好像是event.x,event.y的问题,搞了两天了,还是没找到相关资料,跪求~~(主要问题集中在,textarea和input的设置range的方式好像不一样,moveToPoint(x,y)的作用),求详细~~~
范围怎么选择输入框的 value?????最好给出(标准和IE的两种)
/*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)" />
亲,测试下textarea元素
@三剑客: 是一样的哦~
@幻天芒: 嗯嗯,IE9可以~~~IE9以下不行,还是谢谢了
@三剑客: IE8亲测有效,哈哈~(浏览器模式:IE8兼容模式,文本模式:杂项)
@幻天芒: 问题我已经解决了,谢谢。但还有一个问题不清楚,范围怎么选择输入框的 value?????
@三剑客: 指定内容选中???可以搜索指定文本在input中的起点和终点位置,然后选中~
@幻天芒: 就是不知道怎么指定input 的value啊,貌似range都是dom级别的,而value是dom的一个属性
@三剑客:还是没太懂,你想要实现什么?
@幻天芒: 用范围操作输入框的value
@幻天芒: 用原生的范围
@三剑客:上面的代码都是原生的啊~