【问题标题】:Keep cursor on textarea after clicking on DIV单击 DIV 后将光标保持在 textarea 上
【发布时间】:2015-05-08 11:20:49
【问题描述】:

我有一个文本区域,单击特定 DIV 时会在其中附加文本片段(存储在每个 data-code 属性上):

$(document).on('click', '.extrasPanel .contentVars div', function(e){
        varCode = $('.active').attr('data-code');
        varText=$(document).find('textarea').val();
        $(document).find('textarea').val(varText+varCode);
        checkCounter(e);
});

单击.contenVars div 后,其data-code 值将添加到在textarea 上键入的任何内容,并且要继续输入,用户必须再次单击textarea。

我希望用户在导入这段文本宽度后继续输入,需要重新点击它,以便光标保持在最后一个位置,在最后一个导入字符之后(就像你会粘贴它一样)。

我尝试在函数末尾添加e.preventDefault;,但没有得到肯定的结果。

【问题讨论】:

  • 试试 $('textarea_selector').focus();

标签: javascript jquery


【解决方案1】:

如果你使用 jQuery,你可以试试.focus()

jQuery('textarea').focus();

【讨论】:

  • 这会将光标带到 textarea 输入的开头。
  • 这也可以只用javascript:document.getElementById("textarea").focus();
  • @Biomehanika 查看我发布的答案。
【解决方案2】:

希望此链接对您有所帮助..

jquery-caret.js

这是一个非常简单的轻量级插件,允许您在 or 元素中移动插入符号(或光标)的位置

$('textarea').caretToEnd();

【讨论】:

  • 谢谢。如果可能的话,我想避免使用插件,但可能对其他用户有用。非常感谢。
猜你喜欢
  • 1970-01-01
  • 2017-01-12
  • 1970-01-01
  • 2016-11-16
  • 2011-03-18
  • 1970-01-01
  • 2021-11-10
  • 2021-04-12
  • 2013-04-18
相关资源
最近更新 更多