0

我正在创建我的第一个Chrome扩展程序,该扩展程序将允许用户输入搜索词,并且该搜索词将通过浏览器历史记录进行搜索并显示结果,之后用户可以通过单击删除来删除结果按钮。这里是我的代码 -Chrome扩展程序历史API无法正常工作?

window.onload = function() { 
function getHistory() { 
    var div = document.getElementById('all'); 
    var search = document.getElementById("search").value; 
    if (search === '') { 
    div.innerHTML = ''; 
    div.innerHTML = div.innerHTML + 'Nothing To Search.'; 
    } 
    else { 
    var microseconds = 1000 * 60 * 60 * 24 * 365 * 45; 
    var start = (new Date).getTime() - microseconds; 
    chrome.history.search({text: search, startTime: start, maxResults: 200}, function(data) { 
    if(Object.keys(data).length === 0) { 
    div.innerHTML = ''; 
     div.innerHTML = div.innerHTML + 'Nothing Found.'; 
    } 
    else { 
     div.innerHTML = ''; 
     data.forEach(function(page) { 
     div.innerHTML = div.innerHTML + '<p>'+page.title+'</p> <a href='+page.url+' target="_blank"><p>'+page.url+'</p></a> <br>'; 
    }); 
    document.getElementById('delete').onclick = deleteHistory; 
    } 
}); 
    } 
} 

function deleteHistory() { 
    var search = document.getElementById("search").value; 
    var microseconds = 1000 * 60 * 60 * 24 * 365 * 45; 
    var start = (new Date).getTime() - microseconds; 
    chrome.history.search({text: search, startTime: start, maxResults: 200}, function(data) { 
    var div = document.getElementById('all'); 
    data.forEach(function(page) { 
     chrome.history.deleteUrl({url: page.url}, function() { 
      div.innerHTML = ''; 
      div.innerHTML = div.innerHTML + 'All Clear!'; 
     }); 
    }); 
}); 
} 

document.getElementById('get').onclick = getHistory; 
} 

到目前为止一切正常,除了当我删除历史,它被删除,但它仍然显示在浏览器历史记录。 请告诉我我做错了什么?还有什么我可以改进的代码? 谢谢。

+0

什么是console.log(JSON.stringify(page))? –

+0

对不起,我没有看到console.log(JSON.stringify(page))。你什么意思? – doctorsherlock

+0

在.foreach()中添加console.log(JSON.stringify(page))。 –

回答

相关问题