相关疑难解决方法(0)

jQuery在文本区域中设置光标位置

如何使用jQuery在文本字段中设置光标位置?我有一个包含内容的文本字段,我希望用户光标在关注字段时定位在某个偏移处.代码应该看起来像这样:

$('#input').focus(function() {
  $(this).setCursorPosition(4);
});
Run Code Online (Sandbox Code Playgroud)

setCursorPosition函数的实现是什么样的?如果您有一个内容为abcdefg的文本字段,则此调用将导致光标定位如下:abcd**|**efg.

Java有一个类似的功能,setCaretPosition.javascript是否存在类似的方法?

更新:我修改了CMS的代码以使用jQuery,如下所示:

new function($) {
  $.fn.setCursorPosition = function(pos) {
    if (this.setSelectionRange) {
      this.setSelectionRange(pos, pos);
    } else if (this.createTextRange) {
      var range = this.createTextRange();
      range.collapse(true);
      if(pos < 0) {
        pos = $(this).val().length + pos;
      }
      range.moveEnd('character', pos);
      range.moveStart('character', pos);
      range.select();
    }
  }
}(jQuery);
Run Code Online (Sandbox Code Playgroud)

html javascript jquery textfield

434
推荐指数
10
解决办法
33万
查看次数

如何在textarea中获得光标位置?

我有一个textarea,我想知道如果我在textarea的最后一行或textarea的第一行用我的光标用JavaScript.

我想到抓住第一个换行符和最后一个换行符的位置,然后抓住光标的位置.

var firstNewline = $('#myTextarea').val().indexOf('\n');
var lastNewline = $('#myTextarea').val().lastIndexOf('\n');

var cursorPosition = ?????;

if (cursorPosition < firstNewline)
    // I am on first line.
else if (cursorPosition > lastNewline)
    // I am on last line.
Run Code Online (Sandbox Code Playgroud)
  • 是否可以抓住textarea中的光标位置?
  • 您是否有更好的建议,以了解我是否在textarea的第一行或最后一行?

除非JavaScript简单或简单,否则首选jQuery解决方案.

html javascript jquery textarea input

61
推荐指数
4
解决办法
11万
查看次数

标签 统计

html ×2

javascript ×2

jquery ×2

input ×1

textarea ×1

textfield ×1