我正在做我的第一個Chrome擴展程序,並且在結束之前卡住了。Chrome擴展程序 - 後臺頁面和未讀項目
我得到了json服務器的響應,輸出html,將它緩存在localstorage中,檢查是否有緩存,如果沒有從服務器再次獲取,然後顯示。
現在。在background.js中,我需要每30分鐘檢查一下服務器上的json文件中是否有更新...如果顯示一個徽章,一旦點擊將徽章移除到下一次。但我不知道該怎麼做。因爲如果我製作了setInterval
,它會觸及服務器,並且始終顯示徽章,即使沒有新的。你能幫我建立js嗎?
<script>
setInterval(function(){
chrome.browserAction.setBadgeText({text:chrome.browserAction.setBadgeText({text: "!!!"});});
}, 1800000);
</script>
我也試過這種方式,但沒有任何反應。
function getUnreadItems(callback) {
$.ajax(..., function(data) {
process(data);
callback(data);
});
}
function updateBadge() {
getUnreadItems(function(data) {
chrome.browserAction.setBadgeText({text:data.unreadItems});
});
}
var pollInterval = 1*60*60; // 60 min
var timerId;
function startRequest() {
updateBadge();
timerId = window.setTimeout(startRequest, pollInterval);
}
function stopRequest() {
window.clearTimeout(timerId);
}
background.js
onload='startRequest()'
我不是一個鉻開發人員,但我不得不問...在你上面的函數中,我沒有看到任何時間比較。你正在檢查/存儲/比較任何時間戳嗎? – monsto