Async 웹페이지 로딩

불당   
   조회 11370  

웹페이지의 어느 특정 부분의 로딩이 늦은 경우 그것 때문에 고생을 했을 겁니다.
빼면 안될거 같고 넣어두자니 속터지고.
그래서 db_cache 같은거 넣어줬지만, 그래도 캐슁 할때는 버버버벅...
 
그 답을 일호일흡님 덕분에 풀었습니다.
무한 감사 드리면, 그누보드의 speed up에 큰 기념비를 세우셨다고 도장 꽝~ 찍어드립니다.
 
코드는 아주 쉽습니다. 아래의 함수는 자주 쓰는거라 lib 파일에 넣어 둡니다.
불당팩에서는 b4.lib.php에 넣어뒀습니다. b4.lib.php는 불당팩의 유용함수 모음이라 좋은거에요.
 
function remove_nr($str) {
    $reg_e = array('/\n/', '/\r/', '/\"/', "/<\/script>/i"); 
    $reg_p = array(' ', ' ', '\\"', "<\/SCRIPT>"); 

    return preg_replace($reg_e, $reg_p, $str);
}


다음에 데이터가 올라갈 부분의 영역을 잡아주는데, 높이를 정확하게 setting 해주면 좋습니다.
 
        $loading_msg = "AJAX Data Loading";
        include_once "$g4[path]/lib/latest.my.lib.php";
        // 높이가 고정된 경우에는 height를 주고, 이외에는 주지 않으면 됩니다.
        echo "<div id='my_post' style='height:260px'>$loading_msg</div>";
        echo "<div id='my_comment' style='height:260px'>$loading_msg</div>";
 
마지막으로 tail.php의 끝에 데이터 로딩 script를 넣어 줍니다.
 
<script type="text/javascript">
// jquery를 이용한 비동기 페이지 로딩 입니다
<? if ($g4[path] == ".") { ?>
$("#my_post").html( " <? echo remove_nr( trim(   db_cache("$member[mb_id]_latest_my_post", 600, "latest_my('naver','내가올린글',80,10,25)")   ))?> " );
<?} else { ?>
$("#my_post").html( " <? echo remove_nr( trim(   db_cache("$member[mb_id]_latest_my_post_sub", 600, "latest_my('naver','내가올린글',80,10,25)")   ))?> " );
<? } ?>
<? if ($g4[path] == ".") { ?>
$("#my_comment").html( " <? echo remove_nr( trim(   db_cache("$member[mb_id]_latest_my_comment", 600, "latest_my('naver','내가올린 코멘트',80,10,25,'comment')")   ))?> " );
<?} else { ?>
$("#my_comment").html( " <? echo remove_nr( trim(   db_cache("$member[mb_id]_latest_my_comment_sub", 600, "latest_my('naver','내가올린 코멘트',80,10,25,'comment')")   ))?> " );
<? } ?>
<? if ($g4[path] == ".") { ?>
$("#my_response").html( " <? echo remove_nr( trim(   db_cache("$member[mb_id]_latest_my_update", 600, "latest_my_update('naver','내글의반응',80,10,25)")   ))?> " );
<?} else { ?>
$("#my_response").html( " <? echo remove_nr( trim(   db_cache("$member[mb_id]_latest_my_update_sub", 600, "latest_my_update('naver','내글의반응',80,10,25)")   ))?> " );
<? } ?>
</script>
 
이렇게 하면 화면은 항상 일정한 광속으로 열립니다.
- opencode.co.kr -


제목Page 2/5
     
2016-06   44742   불당
2016-08   55943   불당
2016-05   75270   불당
2018-06   35525   불당
2016-05   46811   불당
2013-02   8006   불당
2013-02   7542   불당
2012-12   10875   불당
2012-12   7020   불당
2012-11   9390   불당
2012-11   7232   불당
2012-11   12626   불당
2012-11   9749   불당
2012-10   10040   불당
2012-07   8606   불당
2012-07   11371   불당
2012-05   8636   불당
2012-04   9093   불당
2012-03   13272   불당
2012-02   10105   불당
2011-11   12122   불당
2011-06   16104   불당
2011-06   11339   불당
2011-06   9348   불당
2011-06   9910   불당