0

まだこのjQueryのものを学んでいます...

私はこのajaxページローダーが好きです。<div id="content">箱から出してすぐにWordpressで動作します。しかし、気になることが1つあります。それは、ajaxがページを読み込んでスピナーを回転させるときに折りたたまれ、ページのフッターを上下にジャンプさせるのではなく、divにそのサイズの一部を保持させたいということです。は500〜600ピクセルよりも高い必要はないので、フッターが上下にバウンドすることはありません。それが書かれている方法でこの関数でそれは可能ですか?以下は最も関連性の高い機能です。(私が省略した他のものは、WordpressとそのURL構造に関係している必要があります。)

function loadPage(url){
  if(!isWorking){
    scroll(0,0);
    document.getElementById('content').innerHTML='<center><img src="'+loadingIMG.src+'" /></center>';
    http.open('GET',url,true);
    isWorking=true;
    http.onreadystatechange=showPage;
    http.send(null);
  }
}

function showPage(){
  if(http.readyState==4){
    if(http.status==200){
      isWorking=false;
      var content = http.responseText;
      content = content.split('id="content"')[1];
      content = content.substring(content.indexOf('>')+1);
      var depth=1;
      var output='';
      while(depth>0){
        temp = content.split('</div>')[0];
        //count occurrences
        i=0;
        pos = temp.indexOf("<div");
        while(pos!=-1){
          i++;
          pos = temp.indexOf("<div",pos+1);
        }
        //end count
        depth=depth+i-1;
        output=output+content.split('</div>')[0]+'</div>';
        content = content.substring(content.indexOf('</div>')+6);
      }
      document.getElementById('content').innerHTML=output;
      pageLoaderInit();
    }else{
      alert(http.status);
    }
  }
}
4

1 に答える 1

0

実際にはjqueryは表示されませんが、プレーンな古いjavascriptを使用してコンテンツdivの高さを設定できるはずです。

loadPage内:

var contentDiv = document.getElementById('content');
contentDiv.innerHTML='<center><img src="'+loadingIMG.src+'" /></center>';
contentDiv.style.height = "600px";

showPage:

var contentDiv = document.getElementById('content');
contentDiv.innerHTML=output;
contentDiv.style.height = "";
于 2009-12-21T03:59:59.033 に答える