現在、オートコンプリートの結果ボックスは、入力ボックスの左端に配置され、指定した幅だけ右に向かって広がっています。ただし、私のビジネス要件は、結果が切り取られ、水平スクロールがビューに追加されるため、入力ボックスがページの右側に配置されている場合は、入力ボックスの右端に揃えて逆方向に広げることです。完全な結果。(「jquery-ui.css」を変更しても問題ありません)
誰でもこれを助けることができますか?
現在、オートコンプリートの結果ボックスは、入力ボックスの左端に配置され、指定した幅だけ右に向かって広がっています。ただし、私のビジネス要件は、結果が切り取られ、水平スクロールがビューに追加されるため、入力ボックスがページの右側に配置されている場合は、入力ボックスの右端に揃えて逆方向に広げることです。完全な結果。(「jquery-ui.css」を変更しても問題ありません)
誰でもこれを助けることができますか?
jQuery UI の現在のバージョンでは、オートコンプリート ウィジェットに、上記の位置ウィジェットと同じプロパティを持つ、オプション付きの位置オブジェクトを与えることができます。これを使用して、提案リストを好きなように配置できます。
ここを参照してください http://jqueryui.com/demos/autocomplete/#option-position
位置を動的に変更する必要がある場合は、「open」イベントを使用する必要があります
コード例
//Supply a callback function to handle the open event as an init option.
$( ".selector" ).autocomplete({
open: function(event, ui) { ... }
});
//Bind to the open event by type: autocompleteopen.
$( ".selector" ).bind( "autocompleteopen", function(event, ui) {
...
});
それらの中で、自動コンパイルフォームの位置を変更できますcss()
$('.ui-autocomplete').css({ 'left': x + 'px', 'top': y + 'px' });
PS:位置は親のhtml入力フィールドに依存するため、cssのみを使用して達成できるかどうかはわかりません