2011-04-06 63 views
0

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

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 
); 

回答

0

当你说自定义文本框,这是使用contenteditable?试试这个:

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

这正是我所需要的,非常感谢你! – MichaelSmith 2011-04-11 16:28:16

相关问题