Chrome 扩展程序历史记录 API 无法正常工作

Chrome extension History API not working properly?

本文关键字:常工作 工作 程序 扩展 历史 记录 API Chrome      更新时间:2023-09-26

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

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;
}

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

所以这是铬的一个错误,这里已经报告了 - https://code.google.com/p/chromium/issues/detail?id=395955 .该错误仍未修复,因此不幸的是,现在对此问题无能为力。