2012-02-06 11 views
0

私はjQueryにもっと親しみやすく快適になるように少しプロジェクトを始めました。これは私が仮想キーボード用に書いているスクリプトの一部です。キーイベントとキーイベントの組み合わせを検出し、対応する文字を点滅するカーソルの前に付加するのに最適です。私が今経験している問題は、ウィンドウの幅を埋めるのに十分な文字を入力すると、カーソルが行の下でノックされ、入力された文字が同じ行に続き、水平スクロールバーがアクティブになるということです。なぜこうなった? jQueryだけで修正できますか?これはjQueryをもっと学ぶ練習なので、CSSハックを最小限に抑えることを試みています。ありがとう!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に指示します。 aaaaaaaaaaaaa(onとon)と入力すると、上記の指示がない限り、それは1単語と見なされ、それを壊さないでしょう。

+0

ありがとうございますが、私はの各文字をラップしています。 – pardon

+0

本当ですか?それは私のためにうまくいった。このフィドルをチェックして、CSSなしで確認してください:http://jsfiddle.net/fxhgU/ –

+0

はい、うまくいきます!残念ながら、私は文字をプリペンドするときには機能しませんでしたので、スクリプトの残りの部分を再設定して追加を調整しました。しかし、それは働いている! – pardon

関連する問題