如何通过按textarea中当前行末尾的空格转到下一行

时间:2014-12-15 23:30:21

标签: javascript html css

我的textarea设置了这两个相关的样式属性:

white-space: pre-wrap;
word-wrap: break-word;

我想要实现的功能是,当用户按下空格键足够的时间到达textarea的右边缘时,我希望光标移动到下一行。

1 个答案:

答案 0 :(得分:0)

我做了" hack与JS" ......这很简单:



var keypress = function(event){
  var textarea = event.target;
  var content = textarea.value;
  var cols = textarea.cols + 1;
  if(content.length % cols === textarea.cols){ textarea.value += '\n'; }
}, textareas = document.getElementsByTagName('textarea');
for(var t = 0; t < textareas.length; t += 1){
  var textarea = textareas[t];
  textarea.addEventListener('keyup', keypress);
  textarea.addEventListener('keydown', keypress);
}
&#13;
textarea {
  white-space: pre-wrap;
  word-wrap: break-word;
}
&#13;
<textarea cols="20" rows="10"></textarea>
&#13;
&#13;
&#13;