2017-05-10 2 views
0

내 사이트에 pace.js 및 pace.css를 추가했습니다.pace.js는 100 %에 도달하지 않습니다

으로 내가해야 할 모든은 .js를 추가하고 가능한 한 빨리 헤더 요소에 .CSS하는 것입니다, 속도의 웹 사이트에 표시, 그래서 내가 그랬어 :

<head> 
    <meta charset="utf-8" /> 
    <title>@ViewBag.Title - My ASP.NET Application</title> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
    <meta content="width=device-width, initial-scale=1.0" name="viewport" /> 
    <meta http-equiv="Content-type" content="text/html; charset=utf-8"> 
    <meta content="" name="description" /> 
    <meta content="" name="author" /> 
    <script src="~/Scripts/global/pace.min.js"></script> 
    <link href="~/Content/global/pace-theme-flash.css" rel="stylesheet" /> 

문제는이 결코 100 %에 도달 :

<div class="pace pace-active"><div class="pace-progress" data-progress-text="99%" data-progress="99" style="transform: translate3d(100%, 0px, 0px);"> 
    <div class="pace-progress-inner"></div> 
</div> 
<div class="pace-activity"></div></div> 

네트워크 탭에 대기중인 항목이없고 콘솔에 오류가 없습니다.

무엇이 여기에 있습니까?

+0

이전에 github에서도이 문제를 이미 조사했지만 실제 해결책은 없습니다. 나는 이미 X 초 동안 99 %에 걸린 경우 페이스 로딩을 중단하는 해결책을 가지고 있습니다. 원한다면 나는 해결책을 제시 할 것이다. –

+0

나중에 대답으로 게시 할 수 있습니다,하지만 난 정말 주위에 작품을 찾고, 오히려 플러그 앤 플레이로 광고로 재생 – JustLearning

답변

1

해결 방법은 다음과 같습니다. 이 코드에서는 100ms마다 현재 진행률을 확인합니다. 이미 99 (%)이면 카운터를 더합니다 (카운터 ++). 그 다음이 간격을 실행할 때마다 카운터가 이미 50인지 확인합니다. 즉, 참이면 현재 진행률을 확인합니다. & & 5 초 (50 x 100ms) 동안 99 %이고 속도를 멈 춥니 다. .

var initDestroyTimeOutPace = function() { 
    var counter = 0; 

    var refreshIntervalId = setInterval(function(){ 
     var progress; 

     if(typeof $('.pace-progress').attr('data-progress-text') !== 'undefined') { 
      progress = Number($('.pace-progress').attr('data-progress-text').replace("%" ,'')); 
     } 

     if(progress === 99) { 
      counter++; 
     } 

     if(counter > 50) { 
      clearInterval(refreshIntervalId); 
      Pace.stop(); 
     } 
    }, 100); 
} 
initDestroyTimeOutPace(); 
관련 문제