Javascript 将鼠标光标设置在文本块的末尾
Javascript 将鼠标光标设置在文本块的末尾,javascript,jquery,html,focus,Javascript,Jquery,Html,Focus,$(id.focus()将光标位置设置为输入框的开头,但我希望将其放置在文本的末尾、最后一行和最后一个位置。尝试以下操作: $(document).ready(function(){ $("#search").focus(function(){ if (this.setSelectionRange) { var len = $(this).val().length; this.setS
$(id.focus()代码>将光标位置设置为输入框的开头,但我希望将其放置在文本的末尾、最后一行和最后一个位置。尝试以下操作:
$(document).ready(function(){
$("#search").focus(function(){
if (this.setSelectionRange)
{
var len = $(this).val().length;
this.setSelectionRange(len, len);
}
else
{
$(this).val($(this).val());
}
});
$("#search").focus();
});
因为并非所有浏览器都支持setSelectionRange
。因此,最好的解决方案是将setSelectionRange
与$(this.val($(this.val()))相结合代码>。有关更多信息,请查看:您可以为此使用setSelectionRange
我的密码-
HTML-
<textarea rows="8" id="txt1" style="width:400px;" >Hello Hello Hello Hello</textarea>
试试-
它在开始时设置位置,但我希望它在结尾text@nrsharma:签出演示。我用Chrome进行了测试,但它可以正常工作,不能正常工作。它一开始就设置了curosr。@nrsharma:我想问题出在浏览器上setSelectionRange
正如Ishan Jain的回答一样,也是解决方案。但并非所有浏览器都支持setSelectionRange
。我认为最好的方法是将此解决方案与setSelectionRange
结合使用。好吧,你是对的,setSelectionRange不适用于所有浏览器。你也应该在这里发布你实际使用的代码,而不仅仅是jsFiddle
var input = $("#txt1");
var len = input.val().length;
input[0].focus();
input[0].setSelectionRange(len, len);