我正在创建一个删除历史记录的扩展。我设法使用Chrome提供的这个功能删除了历史记录:
var millisecondsPerWeek = 1000 * 60 * 60 * 24 * 7;
var oneWeekAgo = (new Date()).getTime() - millisecondsPerWeek;
chrome.browsingData.remove({
"since": oneWeekAgo
}, {
"appcache": true,
"cache": true,
"cookies": true,
"downloads": true,
"fileSystems": true,
"formData": true,
"history": true,
"indexedDB": true,
"localStorage": true,
"pluginData": true,
"passwords": true,
"webSQL": true
}, callback);
但在此期间访问的网站会出现在Chrome新标签的"访问次数最多"部分。
不幸的是,这似乎不可能。
这不是您可以为browsingData
指定的选项,相应的API chrome.topSites
是只读的。
如果chrome.history API可以在您的情况下工作,请尝试使用它。通过使用它,您可以在浏览器的历史记录中添加、删除和查询URL。
要从历史记录中删除所有出现的给定URL,请使用deleteUrl
chrome.history.deleteUrl(object details, function callback)
有关更多信息,请查看此SO问题:
GoogleChrome扩展,只需点击图标即可删除浏览历史记录
无法删除具有Chrome历史记录API 的URL
另一个选择可能是在你的新标签中使用css。通过在谷歌上查看其他问题,我发现了这个与你的问题有关的问题。通过检查帖子中的最后一个答案,他建议使用CSS文件来调整UI。如果对你有用的话,你也可以试试。