1

jqueryレイアウトプラグインを使用していますが、次のような状況で解決策が見つかりません。divを下の境界線を超えてドラッグして、中央のペインのサイズを永続的に大きくするにはどうすればよいですか。

左ペインと中央ペインがあります。ユーザーが左側のペインをクリックすると、動的にdivが生成されます。divが生成され、中央のペインにドロップされます。divはドラッグ可能で、サイズ変更可能です。表示されている中央領域をドラッグしてサイズを変更すると、すべて正常に機能します。divを下からドラッグすると、中央のペインにスクロールバーが表示され、ドラッグしたdivの新しい位置に対応するために中央のペインが伸びているように見えます。しかし、divのサイズを変更したり、別のdivを追加したりしようとすると、divの上部にジャンプして、スクロールバーがリセットされます。Firebugで中央のdivの高さを確認しましたが、新しいdivを下からドラッグした後でも、初期化すると同じ高さのままです。

これがテストページのhtmlコードです。

完全にコピーしてhtmlページに貼り付けるだけです。左側のペインで[新規追加]ボタンをクリックすると、ドラッグ可能でサイズ変更可能な新しいdivが追加されます。

  1. 「新規追加」をクリックします
  2. 新しく追加したdivを中央のペインの下部を超えてドラッグします。
  3. 中央のペインには、想定どおりのスクロールバーが表示されます。
  4. ファイアバグで中央のdivの高さを確認すると、変化していません
  5. 次に、ハンドルをドラッグして、新しく追加されたdivのサイズを変更してみます
  6. 一番上にジャンプし、中央のボックスはスクロールバーを失います。

完全なhtmlページを貼り付けることができなかったので、このスレッドの下部にあるコードへの参照を示します http://groups.google.com/group/jquery-ui-layout/browse_thread/thread/ca922aa44c0048ee

そしてここにテストリンクがありますhttp://jsfiddle.net/yZc63/

4

2 に答える 2

0

これまで誰もこのような状況に遭遇したことがないことに驚いていますか? レイアウト プラグインがなくても、私のソリューションはあまりきれいではありません。レイアウト プラグインを使用せずにページをシミュレートするには、css の position:fixed プロパティを使用して上部と左側のペインを維持する必要がありました。そして、センターdivはまったくありません。新しい div を html の本文に直接追加します。その理由は、ブラウザーのスクロールバーの上に追加のスクロールバーを表示したくないからです。つまり、ブラウザーのスクロールバーを移動すると、中央のペインがスクロールする必要があります。あなたがアイデアを持っているので、私は解決策を添付しています。

他のアプローチを使用して以前の添付ファイルをシミュレートできれば、レイアウト プラグインがなくても、どのようなソリューションにも対応できます。レイアウトプラグインなしでページを添付していますが、それが唯一のエレガントな解決策であるかどうかはわかりません。

ここでソリューションを確認できますhttp://jsfiddle.net/c7wrT/

ダイナミック div を直接 html 本文に追加するのは良い方法ですか?

于 2010-12-17T16:08:37.643 に答える