将光标设置为文本框的焦点长度
Hai Guys,我想把光标放在一个文本框的长度为14的位置上,这个位置不会有数值。我知道最初的光标将会是0,我希望它是14
IE使用不同的方法来设置光标位置比Firefox,Opera和Chrome。 做一个辅助函数会更好,它会为你做。 我使用这个自己的需要。
function setCursor(node,pos){ node = (typeof node == "string" || node instanceof String) ? document.getElementById(node) : node; if(!node){ return false; }else if(node.createTextRange){ var textRange = node.createTextRange(); textRange.collapse(true); textRange.moveEnd(pos); textRange.moveStart(pos); textRange.select(); return true; }else if(node.setSelectionRange){ node.setSelectionRange(pos,pos); return true; } return false; }
最后一件事,就是从你的onfocus处理程序中调用它。
祝你好运
moveStart和moveEnd方法需要2个参数。 第一个参数是一个string(字符,单词,句子或者textedit)。 第二个参数是一个整数,指的是要移动的单位数量。 http://msdn.microsoft.com/en-us/library/ie/ms536623%28v=vs.85%29.aspx
$("#textbox").selectionStart=14
可能适用于Firefox,Opera,Chrome,但不确定适用于IE
PS:应该有长度14>字符已经在文本框中正常工作。