select
複数のHTMLドロップダウンを含むページがonclick
あり、要素の入力が必要です。select
この入力は、要素のクリックイベントリスナーでAJAX呼び出しを使用して行われます。
この理由は、パフォーマンスとロードが非常に重要であるため、ページのロード時にそれらを設定できないためです。
また、デザインではネイティブHTML要素を使用する必要があります。select
この問題を示すためにjsFiddleデモを作成しました。クリックするselect
とアイテムが表示select
され、結果として幅が広がります。
ただし、select
(AJAXポピュレーションの前の)初期オプションのみが表示されます。
------デモを見る------
デモではsetTimeout()
、50ミリ秒を使用してAJAX応答時間をエミュレートします。
onclick
これを設定して正しく表示するにはどうすればよいですか?
select
人口応答のonコールバックを開く方法はありますか?
編集:あるいは、スタイリングにブラウザのネイティブテーマを使用するjQueryプラグインドロップダウンはありますか?
私がこれまでに試したこと
- オンホバーに
select
データを入力しますが、クイックユーザーselect
はオプションが読み込まれる前にを開くことができます。また、ユーザーがページ全体をスクロールして、すべてをスクロールするselect
と、多くの不要なAJAX呼び出しが発生します。 - イベントリスナーを(@AndyPerlitchが提案したように)
focus
の代わりに変更します。ただし、AJAXリクエストの応答に50ミリ秒しかかからなかった場合、これは機能しません。(デモを参照)click
- イベントリスナーをに変更する
mousedown
と、と同じ効果がありますfocus
更新:これはFireFoxの問題ではありません。select
開いてから、新しいアイテムをロードして表示します。すべて開いた状態です。