2012-07-22 24 views
0

我是Jquery的新成員,並且付了一些錢爲我開發了一個腳本。我注意到,當我將這個腳本添加到我的網站時,我的帶寬從1mb跳到5mb。我有很多用戶,所以讓我相信Jquery部分很快就會讓人耳目一新。我的問題是我需要改變什麼,所以它會停止在下面的腳本中使用這麼多的帶寬。PHP jquery時間帶寬

謝謝!

<script> 

current_time = 1342987067; 
start_at = 1342986987; 
waiting_time = 120; 
break_time = 9999; 
view_1 = 'Text removed for example<br>'; 
view_2 = 'Text removed for example<b><span id="countdown-value"></span></b> seconds.<br>'; 
view_3 = 'Text removed for example... currently in progress...<br>'; 
winner = "Text removed for example"; 

function changeView() { 
    if (start_at + waiting_time > current_time) { 
     if (break_time < waiting_time) { 
      return view_1 + "\n" + winner; 
     } else { 
      return view_2 + "\n" + winner; 
     } 
    } else { 
     return view_3 + "\n" + winner; 
    } 
} 

function setView() { 
    $("#countdown-holder")[0].innerHTML = changeView(); 
} 

function reload() { 
    current_time ++; 
    break_time = start_at + waiting_time - current_time; 
    setView(); 
    if (break_time <= waiting_time) { 
     if ($("#countdown-value")[0] != null) 
      $("#countdown-value")[0].innerHTML = break_time; 
    } else { 
     if ($("#countdown-value")[0] != null) 
      $("#countdown-value")[0].innerHTML = break_time - waiting_time; 
    } 
    setTimeout("reload()", 1000); 
} 
setTimeout("reload()", 1000); 
setView(); 

</script> 
<script> 

function setBreakTimeCountdown() { 

    breakTimeCountdown = parseInt($("#countdown-value")[0].innerHTML); 

    breakTimeCountdown --; 

    if (breakTimeCountdown < 0) { 

     breakTimeCountdown = 0; 

     reload(); 

    } 

    $("#countdown-value")[0].innerHTML = breakTimeCountdown; 

    setTimeout("setBreakTimeCountdown()", 1000); 

} 

setTimeout("setBreakTimeCountdown()", 1000); 

</script> 
+1

您是否刪除了可能需要帶寬的部分?代碼中沒有網絡I/O。 – Esailija 2012-07-22 20:08:09

+0

它看起來並不像在那裏,甚至會導致頁面刷新。 – Norguard 2012-07-22 20:08:18

回答

0

腳本似乎沒有什麼可以叫回你的網站,所以我猜它加載的jQuery本身的問題?

最簡單的解決方案是使用Google Libraries API。向下滾動並獲取jQuery鏈接,並將其替換爲本地jQuery。它將使用Google的帶寬。

+0

我會盡力的! – 2012-07-22 20:09:46

1

這段javascript中的任何調用都不會直接觸發任何請求。

但是,如果任何變量view_1view_2view_3,並winner都包含有對他們的其他媒體資源,這可能會引發更多的請求到服務器,這會增加帶寬利用率引用HTML。

+0

設置'.innerHTML'不會加載或執行腳本雖然 – Esailija 2012-07-22 20:10:15

+0

好點,忘記了這一點,從答案中刪除。 – ctcherry 2012-07-22 20:33:10