2012-02-06 60 views
0

我已经开始为自己开发一个小项目,以便使用jQuery更加熟悉和舒适。这是我为虚拟键盘编写的脚本的一部分。它适用于检测关键事件和关键事件组合,并将相应的字符添加到闪烁的光标。我现在遇到的问题是,当我输入足够的字符来填充窗口的宽度时,光标被击倒一行,而键入的字母在同一行上继续,激活水平滚动条。这是为什么发生?它可以固定瓦特/单独的jQuery?尽量保持CSS的最小化,因为这是一个练习来学习更多的jQuery。谢谢!jQuery预先设置html并检测窗口宽度

的jQuery:

$(document).keydown(function(e) { 
if (e.keyCode == 65) { 
    if (e.keyCode == 65 && e.shiftKey) { 
       $('#cursor').prepend('<span>A</span>'); 
     } 
    else { 
     $('#cursor').prepend('<span>a</span>'); 
    } 
} 

HTML:

<body> 
      <div class="textarea"> 
        <!-- where characters prepend --> 
        <span id="cursor"></span> 
      </div> 
    </body> 

回答

0

这是一个CSS的问题,但它是一个容易解决。只需将其添加到您的CSS:

.textarea { 
    word-wrap: break-word; 
} 

指示CSS打破单词以便换行。如果你输入aaaaaaaaaaaaa(on and on),它会考虑这个单词,除非你给出上述指示,否则不要打破它。

+0

谢谢,但因为我正在包装每个字符在不会工作。 – pardon 2012-02-06 19:16:00

+0

你确定吗?它为我工作得很好。检查这个小提琴,然后检查它没有CSS:http://jsfiddle.net/fxhgU/ – 2012-02-06 19:20:12

+0

是的,这工作!不幸的是,当我添加字符时,它不起作用,所以我重新配置了脚本的其余部分以容纳附加信息。但它的工作! – pardon 2012-02-06 20:19:13