【问题标题】:Setting focus to the end of a textarea将焦点设置到文本区域的末尾
【发布时间】:2012-10-16 09:10:36
【问题描述】:
editor.focus();

在 Chrome 中设置焦点。 但是在 Firefox 中,重点是设置在开头就行了。我希望将其设置在行尾。我试过这个:

moveCaretToEnd(ed);

function moveCaretToEnd(el) {
    if (typeof el.selectionStart == "number") {
      el.selectionStart = el.selectionEnd = el.value.length;
    } else if (typeof el.createTextRange != "undefined") {
      el.focus();
      var range = el.createTextRange();
      range.collapse(false);
      range.select();
    }
}

而且愚蠢的 FF 不再起作用了。焦点消失了。

【问题讨论】:

  • 您能为此提供 jsfiddle 演示吗?

标签: javascript jquery cross-browser textarea


【解决方案1】:

我在 firefox 上使用了以下 hack:

var value = editor.val();
editor.val("");
editor.focus();
editor.val(value);

这是工作小提琴:http://jsfiddle.net/vyshniakov/p37ax/

【讨论】:

  • 哈,我知道必须有一个简单的方法来做到这一点。感谢您的精彩回答!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-04-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-10
相关资源
最近更新 更多