Javascript 文本输入字段中的光标位置

Javascript 文本输入字段中的光标位置,javascript,jquery,text,input,Javascript,Jquery,Text,Input,关于如何将光标准确地放置在文本区域中您想要的位置,有很多信息。对于字段,所有这些似乎都不起作用 基本上,当页面加载时,我有一个带有文本的输入字段,并且它是聚焦的。问题是光标位于预写文本的末尾。我需要它在一开始。或者,隐藏光标也可以。事实上,甚至更好,但我不知道这是否可能 理想情况下,这可以在jQuery中完成,但常规JS也可以 谢谢 Mala这可以使用选择属性来完成: $('#my-element-id').attr({ selectionStart : 0, selection

关于如何将光标准确地放置在文本区域中您想要的位置,有很多信息。对于
字段,所有这些似乎都不起作用

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

理想情况下,这可以在jQuery中完成,但常规JS也可以

谢谢

Mala

这可以使用选择属性来完成:

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

不确定jQuery在Jordan的回答中做了什么,但这一个可能更具跨浏览器性:

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);
    });
});
顺便说一句,这段代码完全没有经过测试

编辑:在我看到您正在查找输入元素后更新了代码