基于jQuery实现的设置文本区域的光标位置

前端之家收集整理的这篇文章主要介绍了基于jQuery实现的设置文本区域的光标位置前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

如何使用jQuery在文本框中设置光标位置?我有一个带有内容的文本字段,并且我希望光标在焦点位于特定的偏移位置,该如何实现呢?

实现方法一:

这是一个jQuery解决方案:

有了这个,你可以做

$('#elem').selectRange(3,5); // select a range of text $('#elem').selectRange(3); // set cursor position

实现方法二:

$.fn.setSelection = function(selectionStart,selectionEnd) {
if(this.length == 0) return this;
input = this[0];

if (input.createTextRange) {
var range = input.createTextRange();
range.collapse(true);
range.moveEnd('character',selectionEnd);
range.moveStart('character',selectionStart);
range.select();
} else if (input.setSelectionRange) {
input.focus();
input.setSelectionRange(selectionStart,selectionEnd);
}

return this;
}

$.fn.focusEnd = function(){
this.setCursorPosition(this.val().length);
return this;
}

现在,您可以通过调用以下任何元素将焦点移至任何元素的结尾

$(element).focusEnd();

方法

function setCaretToPos (input,pos) {
setSelectionRange(input,pos,pos);
}

调用办法:

setCaretToPos(document.getElementById("YOURINPUT"),4);

jquery中文本域光标操作(选中、添加删除获取

1、获取光标位置:$(elem).iGetFieldPos(); 2、设置光标位置:$(elem).iSelectField(start); 3、选中指定位置内的字符:$(elem).iSelectField(start,end); 4、选中指定的字符:$(elem).iSelectStr(str); 5、在光标之后插入字符串:$(elem).iAdd(str); 6、删除光标前面(-n)或者后面(n)的n个字符:$(elem).iDel(n);

这篇文章就介绍到这了,希望大家以后多多支持编程之家。

原文链接:https://www.f2er.com/jquery/31882.html

猜你在找的jQuery相关文章