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);
});
});
顺便说一句,这段代码完全没有经过测试
编辑:在我看到您正在查找输入元素后更新了代码