如何在Mozilla的自定义文本框中将插入文本前面的光标移动?

时间:2011-04-06 16:54:09

标签: javascript firefox selection mozilla spaces

我正在使用Firefox 3.6(必须是Firefox 3.6,不需要跨浏览器兼容)以及从window.getSelection()返回的选择对象。 下面的代码是捕获tab键并防止它从自定义文本框中跳出。然后在光标前面插入5个不间断的空格。如何使光标跳到插入的非中断空格的末尾?

content.bind('keydown', function(evt) {
    var TABKEY = 9;
    if (evt.keyCode == TABKEY) {
      var TAB_SPACES = 5;
      evt.preventDefault();
      var sel = window.getSelection();
      var range = sel.getRangeAt(0);
      range.insertNode(document.createTextNode('\u00a0'.times(TAB_SPACES)));
    }
  }, false
);

1 个答案:

答案 0 :(得分:0)

当您说自定义文本框时,这是使用contenteditable完成的吗?试试这个:

var text = document.createTextNode('\u00a0'.times(TAB_SPACES));
range.insertNode(text);
range.setStartAfter(text);