3

Opera Mobile(9.5および10を試してみました)を使用すると、Javascriptを使用してテキストボックス内にカーソルを置くことができません。

私はバーコードスキャナーを持っているので、ユーザーがタップしなくても自動バーコード入力を受信できるように、テキストボックスを自動フォーカスさせたいと思いました。タップする必要はありません。テキストボックスにフォーカスがないときにスキャナーがスキャンしようとすると、ホームページの設定が変更されていても、Operaはローカルの[WelcometoOpera]ページに移動します。

私はもう試した:

  • jQuery .focus()
  • jQuery .live()
  • Barebones Javascript .focus()
  • 入力タグのオートフォーカスプロパティ
  • 入力タグのtabindex="-1"
  • putCursorAtEnd()はここにあります
  • setTimeout()を使用して上記をタイマーでラップする

OperaMobileでこれを行う方法が必要です。他のすべてのJavascriptは問題なく動作します。

4

1 に答える 1

1

これに対する解決策を見つけました。スキャンしたバーコードをフォーカスのあるテキスト ボックスに挿入する ScanWedge というアプリを使用します。問題は、スキャンを行う前にピントを合わせる必要があったことです。

ScanWedge の設定には、バーコードと共にプレフィックスを送信するオプションと、プレフィックスでエスケープを有効にするオプション (ON にする必要があります) があります。バーコードの前に Enter キーを押すことを意味する \x0D のプレフィックスを使用するだけです。 .

focus() メソッドはテキストボックスを強調表示しますが、カーソルを挿入しないため、これは機能しますが、テキストボックスが強調表示されているときにエンターキーが押されると、カーソルが挿入されます。

于 2011-04-21T10:22:08.107 に答える