2012-02-17 26 views
3

私は単純なテキストエリアを持ち、Webアプリケーションに入力します。何らかの理由で、私は矢印キーで入力されたテキストに戻ることができません。入力カーソルは後方に移動しません。入力とテキストエリアで矢印キーが機能しない

ただし、Ctrl + aを使用することも、編集したい位置でマウスでクリックすることもできます。これは混乱しています。私はコード内のキーイベントでe.preventDefaultを使用していません - 約30個のjsファイルといくつかの巨大なCSSファイル - を持っています。

矢印が機能しない理由は何ですか?

ありがとうございます!

+1

特定のJSファイルを削除してデバッグしますか? – 472084

+0

最低限の実例を提供できますか?いくつかのコード? –

+1

まず、矢印キーが再び機能するまで、連続したjsファイルを削除して問題を特定します。 – WTK

答えて

6

は、すべてのJSファイルで検索を行うとのようなものを探します。これは左矢印であるよう

keyCode == 37 

または

which == 37 

if (e.keyCode == 37) 
    e.preventDefault(); 
+0

それです。私のjsファイルの内容を検索した結果、デフォルトの(33,34,35,36,37,38,39,40)を防止していたドロップダウンメニューコンポーネントがあることがわかりました。ありがとう! –

+0

私は最初にこの答えを見たときに私は懐疑的でした。それから、あなたが言ったことを試しました。あなたが正しいと分かります。心が吹かれました。 – taylorstine

0

ちょうどライトボックスの内側に入力し、テキストエリアをロードする人々を助けるためにコメントを追加する:おそらくどこかに似たものがあります。 ほとんどのライトボックスは、矢印キーを写真ナビゲーション(前、次)にバインドするので、矢印キーはフォームフィールドでは機能しません。

これを修正するには、ライトコードのJavascriptコード(Julesが示唆)を検索し、矢印キーをバインドするコードブロックを削除します。または、それを条件付けることができます。例えば

は、キーバインドコードが

var b=p.current,c=({27:"close",33:"prev",37:"prev",38:"prev",39:"next",40:"next",34:"next"})[a.keyCode]; 

27で右lightbox.jsにエスケープキーであるので、あなたがそれを残し、残りを削除することができます。

関連する問題