伙计们,我想将光标设置在没有值的文本框上长度为 14 的位置。我知道最初光标将在 0 我希望它在 14
在文本框的焦点上设置光标长度为 14
IT技术
javascript
html
textbox
cursor-position
onfocus
2021-02-15 21:30:42
3个回答
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 个参数。第一个参数是一个字符串(字符、单词、句子或文本编辑)。第二个参数是一个整数,指的是要移动的单位数。 http://msdn.microsoft.com/en-us/library/ie/ms536623%28v=vs.85%29.aspx
$("#textbox").selectionStart=14
可能适用于 Firefox、Opera、Chrome,但不确定是否适用于 IE
PS:文本框中应该有长度为 14 > 的字符才能正常工作。
其它你可能感兴趣的问题