2017-05-10 21 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(%),我會加一個計數器(counter ++)。然後,每次運行這個間隔時,我還會檢查計數器是否已經是50,這意味着如果它是真的,那麼我已經檢查了當前進度& & 5秒鐘(99 x 50毫秒)的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();