1

キーボードの矢印で項目を選択すると、入力フィールドの選択が期待どおりに変更されます。ただし、マウスをアイテムの外に移動すると、入力フィールドはユーザーが入力したものに戻り、以前にキーボードで行った選択が失われます。

jsfiddle の例

ドキュメントは、私が達成しようとしているのは実際にはデフォルトの動作であると主張していますが、機能していないようです。

動作が変更されたように見える別の参照: http://forum.jquery.com/topic/autocomplete-s-menu-items-mouseover-behavior#14737000002991273

私は現在、jQuery-1.7.2 を取り込む jquery-rails 2.0.2 を使用しています。

4

2 に答える 2

0

フィドルの Javascript の最後の行をコメント アウトすると、期待どおりの動作が再び開始されます。

理由はよくわかりませんが、オートコンプリート スクリプトを 2 回呼び出していたようで、何らかの形で相互に干渉していた可能性があります。

于 2012-07-20T20:30:07.410 に答える
0

「フォーカスがアイテムに移動する前 (選択ではありません)、ui.item はフォーカスされたアイテムを参照します。フォーカスのデフォルト アクションは、フォーカス イベントがトリガーされた場合のみですが、テキスト フィールドの値をフォーカスされたアイテムの値に置き換えることです。キーボード インタラクションによって。このイベントをキャンセルすると、値が更新されなくなりますが、メニュー項目がフォーカスされることは妨げられません。"

テキストの住まいは、フォーカス イベントを記述するものです。
よく見るとそう書いてあるThe default action of focus is to replace the text field's value with the value of the focused item, though only if the focus event was triggered by a keyboard interaction.

したがって、このデモを見るとわかるように、オプションはフォーカスされますが、値は変更されません。

参照

于 2012-07-20T20:35:55.140 に答える