2009-11-25 54 views
2

关于如何将光标准确放置在文本区域中的位置有很多信息。它似乎没有用于<input type="text">字段。文本输入字段中的光标位置

基本上,当页面加载时,我有一个输入字段,其中包含文本,并且它是重点。问题在于光标位于预先写好的文本的末尾。我需要它在一开始。或者,隐藏光标也可以。实际上更好,但我不知道这是否可能。

理想情况下,这将在jQuery中完成,但常规的JS也很好。

谢谢!
麻辣

回答

3

这种使用可以做选择属性:

$('#my-element-id').attr({ 
    selectionStart : 0, 
    selectionEnd : 0 
}); 
+0

为什么downvote? – 2011-05-18 22:44:11

2

不知道什么jQuery不会引擎盖乔丹的回答下,但是这一次可能是有点更跨浏览器:

function setSelectionRange(inputEl, selStart, selEnd) { 
    if (inputEl.setSelectionRange) { 
     inputEl.focus(); 
     inputEl.setSelectionRange(selStart, selEnd); 
    } else if (inputEl.createTextRange) { 
     var range = inputEl.createTextRange(); 
     range.collapse(true); 
     range.moveEnd('character', selEnd); 
     range.moveStart('character', selStart); 
     range.select(); 
    } 
} 

如果你正在使用jQuery连接它,使用它像:

$(document).ready(function() { 
    $('input[type="text"]').each(function() { 
     setSelectionRange(this, 0, 0); 
    }); 
}); 

顺便说一下,这段代码完全没有经过测试。

编辑:更新代码后,我看到你正在寻找输入元素...

相关问题