1

で作成された標準のjquery-uiダイアログが$("#element").dialog();あり、別の要素の境界内にそれを含める最良の方法を見つけようとしています。

コンテナの境界の外に移動できるようにしたいので、javascriptだけで再配置することを避け、コンテナを使用してスクロールできるようにしています#container {overflow:auto;}

ここに状況のフィドルがあります: http://jsfiddle.net/Z4xAA/ - #myDialog を #dialogContainer の境界内に含めようとしています

これを実行して、dialog.parent をコンテナー要素に移動しようとしましたが、役に立ちませんでした。

これについてどうすればいいですか?

編集: フィドルをいじっていたところ、webkit デバッガーを介して自分でダイアログをコンテナー要素に移動すると、希望どおりに動作することがわかりました。あとは、プログラムでそれを行うだけです。

4

1 に答える 1

2

.append() を使用すると、要素が適切に移動します。コンテナへのダイアログの .parent() でそれを行うと、望ましい結果が得られます。

$("#dialogContainer").append($("#myDialog").parent());

http://jsfiddle.net/Z4xAA/7/で更新されたフィドル

その後必要なことは、必要に応じてダイアログの位置を変更して、要素の上部より上にならないようにすることだけです。

于 2012-08-28T15:55:05.690 に答える