0

本文に多数の jquery-ui ダイアログが追加されています。表示プロパティがブロックに設定されているものもあれば、非表示に設定されているものもあります。display:block を使用してダイアログのリストを取得し、最後のものを選択して、ダイアログ スタックの一番上に移動したいと考えています。私が使用しているコードは

 $('.ui-dialog').filter(function (index) {
                return $(this).css("display") == "block";
            }).dialog('moveToTop');

残念ながら、エラーが発生します

Uncaught Error: cannot call methods on dialog prior to initialization; attempted to call method 'moveToTop'

これはどのように可能ですか?ダイアログはすでに初期化されています。どうすればこれを機能させることができますか?

4

1 に答える 1

1

そして、正しい行は

$('.ui-dialog:visible').last().find(".ui-dialog-content").dialog('moveToTop');

したがって、純粋にセレクターで実行でき、フィルター機能は必要ありません。:visible セレクターの詳細はこちら

于 2013-10-20T15:47:08.483 に答える