0

私はこれを行うためにFirefoxを使用していますが、IE6で動作します...図を参照してください。

基本的に、矢印キーを使用して入力要素のグリッドをトラバースするように記述されたコードがあります。それはすべてうまく機能しています。矢印キーを使用して、任意のフィールドに自由に移動できます。上矢印または下矢印を使用すると、次のフィールドのすべてのテキストを選択することで、選択機能が正しく機能しているように見えます。(望ましい結果)

document.getElementById(id).select();

ただし、左または右にトラバースすると、テキストはデフォルトのブラウザ機能を使用して、選択が発生した後にカーソルを左または右に1回移動しているように見え、ユーザーはすべてのテキストを再度選択する必要があります(望ましくない結果)。

私のテキストが正しく選択されるようにFirefoxでそれを無効にする方法はありますか?ユーザーの一般的なワークフローは、矢印キーを押してから数字の入力を開始することです...その後、繰り返します。

4

2 に答える 2

1

この動作はキーアップイベントが原因だと思います。あなたはそれを止めようとしましたか?

編集:うん、キーアップイベントがキャンセルされたときに正常に動作します: http://jsfiddle.net/D6ANY/1/

于 2010-06-24T07:37:00.727 に答える
-1

あなたの説明から、あなたは「スプレッドシート」のような効果を達成しようとしているように思われます。その場合、実装している動作によってユーザーが混乱する可能性があります。たとえば、スプレッドシートでは、選択範囲はセルごとに矢印キーで移動しますが、セルを編集する必要がある場合は、Enterキーを押す必要があります。これで編集可能になり、Enterキーをもう一度押すと読み取り専用になります

于 2010-06-23T16:40:43.807 に答える