我正在开发一个Chrome扩展程序,其中包含一个选项标签,用于在沙盒iframe元素中加载在线网页。每当用户点击iframe中的某个链接时,浏览器就会创建一个新的历史记录条目,并且浏览器的后退/前进按钮会被激活。
我想清除用户关闭标签后创建的所有历史记录条目,如果可能,请停止浏览器将标签添加到“历史记录 - >最近关闭”菜单中。
我已经在浏览器控制台中尝试了不同的API,并且以下所有内容似乎都没有按预期运行:
window.onunload = function() {
// Using the `chrome.history` API
chrome.history.deleteUrl({url: 'https://example.tld/'}, console.log);
// Using the `chrome.browsingData` API
chrome.browsingData.removeHistory({
"since": (new Date()).getTime() - 1000000
}, console.log);
};
虽然这成功执行且没有任何错误,但我仍然可以通过“历史记录 - >最近关闭”恢复标签,并使用后退/前进按钮导航回iframe元素内加载的网址(即“{{ 3}}“)。我怎么能阻止这种行为?
注意:“history”和“browsingData”权限都是通过“manifest.json”文件获取的。
答案 0 :(得分:0)
SO post中提出了同样的情况。
有没有办法从以下位置删除特定关闭的标签:
- 最近关闭标签和
- 也可以从多功能框预测文本中擦除它的任何痕迹?
醇>
建议的操作是使用browsingData.remove。
chrome.browsingData.remove( RemovalOptions options, DataTypeSet dataToRemove, function callback)