Js/Jquery ajax - 통신 중 로딩 이미지 출력 - 오늘의 명언 코드 js function lodingSign() { // 로딩 이미지 div var loading_div = `<div id='loading_div'> <img src='loding.gif' id="loading_img"/> </div>`; $('body').append(loading_div); // 마우스 커서 로딩 중으로 변경 $('html').css("cursor", "wait"); // ajax 함수 실행 버튼 클릭 이벤트 차단 $('button').attr('onclick', 'return false;'); } function lodingImgHide() { // 마우스 커서 기본값으로 변경 $('html').css("cursor", "auto"); // ajax 함수 실행 버튼 클릭 이벤트 차단 해제 $('button').attr('onclick', '함수이름()'); // 로딩 이미지 삭제 $('#loading_div').remove(); } // 기본 ajax 함수 function 함수이름() { // 로딩 이미지 출력 lodingImgShow(); var Params = {}; $.ajax({ url: "/url", type: 'POST', data: Params, datatype: 'json', // ajax 통신 성공 시 success: function (result) { switch (result.status) { case 'complete': console.log('성공 시'); break; case 'fail': console.log('실패 시'); break; default: console.log('예외 발생 시'); break; } }, // ajax 통신 중 에러 발생 시 error: function (request, status, error) { // 에러 출력 console.error("code:" + request.status + "\n" + "message:" + request.responseText + "\n" + "error:" + error + "\n" + "request:" + request); }, // ajax 통신 종료 시 complete: function () { // 로딩 이미지 종료 lodingImgHide(); } }); } css #loading_div { display: flex; justify-content: center; align-items: center; position: fixed; width: 100vw; height: 100vh; top: 0; left: 0; z-index: 9999; background-color: #000; opacity: 0.5; } #loading_img { width: 40px; position: relative; display: block; margin: 0px auto; } 로딩 중 gif 반응형 공유하기 URL 복사카카오톡 공유페이스북 공유엑스 공유 게시글 관리 구독하기Aleph Kim의 IT 블로그 저작자표시 비영리 Contents 코드 js css 로딩중gif 당신이 좋아할만한 콘텐츠 jquery - 강제 이벤트 발생 2022.10.02 Jquery - 라디오 인풋 값 가져오기 2022.08.29 Jquery - 폼 전송 차단 및 검증 후 재전송 2022.08.18 Jquery - 태그의 요소로 태그 찾기 2022.08.18 댓글 0 + 이전 댓글 더보기