jQuery

Ajax 통신 중 Loading bar 구현 (ajaxStart, ajaxStop 이벤트)

은둔한량 2014. 2. 28. 15:03
반응형

 

  1. // loading bar 태그
  2. // iframe 위에 로딩 바 이미지를 얹혀 띄우는 방식
  3. <!-- Progress Bar -->
  4. <div id="hiddenDivLoading" style="visibility:hidden">
  5.     <iframe id="iframeLoading" frameborder="0" height="134px" style="z-index:-1; position:absolute; visibility:hidden"></iframe>
  6.     <div id='load'><img src='/img/common/loading.gif' /></div>                                                                                                                  
  7. </div>
  8. <!-- Progress Bar -->
  9.  
  10.  
  11.  
  12. // document onload function !!
  13. $(document).ready(function(){
  14.    
  15.     // 페에지 로딩 즉시 로딩바 태그 활성화
  16.     var divLoading = document.all.hiddenDivLoading;
  17.         divLoading.style.visibility = "visible";
  18.  
  19.     // ajax 통신 중 로딩 바
  20.     // 현재 페이지에서 ajax 통신이 시작될 경우 실행될 이벤트
  21.     $(document).ajaxStart(function() {
  22.         // 로딩 바 이미지를 띄우고
  23.         $('#load').show();
  24.         // 화면의 중앙에 위치하도록 top, left 조정 (화면에 따라 조정 필요)
  25.         $("#hiddenDivLoading").show().css({
  26.             top: $(document).scrollTop()+ ($(window).height() )/2.6 + 'px',
  27.             left: ($(window).width() )/2.6 + 'px'
  28.         });
  29.     // ajax 통신이 종료되었을 때 실행될 이벤트
  30.     }).ajaxStop(function() {
  31.         // 로딩 바 태그와 이미지를 모두 hide 처리
  32.         $('#load').hide();
  33.         $("#hiddenDivLoading").hide();
  34.     });
  35.  
  36. });


반응형

'jQuery' 카테고리의 다른 글

jQuery datepicker 일요일, 특정일 비활성화 시키기  (0) 2016.07.27
jquery 플러그인 모음  (0) 2015.12.17
jQuery를 UI 레이아웃 플러그인  (1) 2013.06.09
jQuery 란 무엇인가 ?  (0) 2013.05.09
배열을 이용한 중복 제거  (0) 2013.04.29