0

私は次のコードを使用しています:

  $("#galleries").load("letters/index.php");
  $(function(){
  $('#galleries').hide().fadeIn(1500);
  });

すべてが正常に動作します。私の問題は、そのようなスクリプトが約8つあることです。divのコンテンツを切り替えると、スムーズに実行されません。まず、DIVがクリアされ、その後約0.7秒間表示されます。 、1秒以内にすべてのコンテンツが読み込まれ、私の目を邪魔します。

ロードしたいページの高さを取得し、DIVの高さをその高さに設定してから、情報をロードするという解決策を考えました。それは機能しますか?LOAD関数はdivからすべてを削除するので、heightプロパティも削除しますか?

一般的に、これは私が達成しようとしていることです:

 //GET TARGET'S HEIGHT
 //SET #galleries TO THAT HEIGHT
 $("#galleries").load("letters/index.php");
  $(function(){
 $('#galleries').hide().fadeIn(1500);
 });

ターゲットの高さを取得して設定する方法がわかりません。しかしとにかく、それは機能しますか?または多分誰かが私のために別の解決策を持っていますか?

前もって感謝します!

4

1 に答える 1

1

コンテンツがロードされた後にload()コードを実行できる完全なコールバックを使用していません。

次のようなものを試してください。

$(function(){
/* hide first, then load*/
 $('#galleries').hide().load("letters/index.php", function(){
      /* new content now exists*/
      $(this).slideDown()/* or fadeIn() or any other effect*/
  });
});

SlideDown全体の高さに依存しないため、コンテンツをスムーズに下に移動します

于 2013-01-15T08:42:04.477 に答える