> 웹 프론트엔드 > CSS 튜토리얼 > XMLHttpRequest 이벤트를 사용하여 페이지를 로드하는 동안 실행 중인 진행률 표시줄을 표시하려면 어떻게 해야 합니까?

XMLHttpRequest 이벤트를 사용하여 페이지를 로드하는 동안 실행 중인 진행률 표시줄을 표시하려면 어떻게 해야 합니까?

DDD
풀어 주다: 2024-10-29 10:38:29
원래의
817명이 탐색했습니다.

How can I display a running progress bar during page load using XMLHttpRequest events?

페이지를 로드하는 동안 실행 중인 진행률 표시줄 표시

페이지를 로드하는 동안 실행 중인 진행률 표시줄을 표시하려면 정적 로딩 이미지가 필요합니다. 이는 XMLHttpRequest(XHR) 객체에서 제공하는 진행 이벤트를 활용하여 달성할 수 있습니다.

질문에 제공된 JavaScript 코드에서 window.load() 이벤트 리스너는 로딩 이미지를 숨기는 데 사용됩니다. 페이지 로딩이 완료되었습니다. 진행률 표시줄을 구현하려면 대신 XHR 개체의 진행률 이벤트를 활용할 수 있습니다.

다음 코드 조각은 XHR 진행률 이벤트를 사용하여 실행 중인 진행률 표시줄을 표시하는 방법을 보여줍니다.

<code class="js">$.ajax({
  xhr: function() {
    var xhr = new window.XMLHttpRequest();
    // Upload progress
    xhr.upload.addEventListener("progress", function(evt) {
      if (evt.lengthComputable) {
        var percentComplete = evt.loaded / evt.total;
        // Update the progress bar here
        console.log(percentComplete);
      }
    }, false);
    // Download progress
    xhr.addEventListener("progress", function(evt) {
      if (evt.lengthComputable) {
        var percentComplete = evt.loaded / evt.total;
        // Update the progress bar here
        console.log(percentComplete);
      }
    }, false);
    return xhr;
  },
  type: 'POST',
  url: "/",
  data: {},
  success: function(data) {
    // Do something success-ish
  }
});</code>
로그인 후 복사

이 코드는 업로드 및 다운로드 진행 모두에 대한 진행 이벤트 리스너를 사용하여 XHR 요청을 설정합니다. 업로드 또는 다운로드 진행 상황이 변경되면 이벤트 리스너가 트리거되고 이에 따라 진행률 표시줄을 업데이트할 수 있습니다.

코드의 console.log() 문은 데모용입니다. PercentComplete 값에 따라 진행률 표시줄의 모양을 업데이트하는 고유한 코드로 대체할 수 있습니다.

위 내용은 XMLHttpRequest 이벤트를 사용하여 페이지를 로드하는 동안 실행 중인 진행률 표시줄을 표시하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿