【问题标题】:Delete localStorage, databaseStorage for a tab in Chrome/Chromium删除 Chrome/Chromium 中选项卡的 localStorage、databaseStorage
【发布时间】:2013-10-22 19:32:17
【问题描述】:

我想在选项卡将要关闭时从选项卡中删除所有存储数据。我发现了一个删除 cookie 的扩展程序。但由于我是扩展写作的新手,我想知道在哪里查看文档 localStorage purge。

当标签被移除时,background.js 会使用 tabId 获取回调 onRemoved。我可以获取 ID 的 Tab 对象。但是我还没有找到应该如何从 localStorage 或 databaseStorage 中删除项目。

w3c 文档提到了 localStorage.clear()。如何在正确的上下文中触发它(在选项卡中而不是在后台进程中)?

更新:为了澄清中心目标,我正在寻找一种方法来限制或重建方法 chrome.browsingData.removeLocalStorage/removeIndexedDB/removeWebSQL 的调用,仅在关闭的选项卡/域上

谢谢, 乒乓

【问题讨论】:

  • 所以在一行中,您的问题是“如何从 chrome 扩展中删除页面中的 localStorage?”?
  • window.onunload = function() {localStorage.clear();}

标签: javascript html google-chrome google-chrome-extension


【解决方案1】:

您可以在 JavaScript 中使用 beforeunload 事件。

window.onbeforeunload = function() 
{
localStorage.removeItem(key);
return '';
};

注意:onbeforeunload 方法应该返回一个字符串。

【讨论】:

  • 我希望为用户关闭的每个选项卡调用它,并且我没有网页设置的项目(或键)列表..
  • 或者你可以使用这个window.onbeforeunload = function(){localStorage.clear();};
猜你喜欢
  • 2012-01-09
  • 1970-01-01
  • 2018-02-18
  • 2012-04-14
  • 1970-01-01
  • 2021-06-05
  • 2013-10-17
  • 2018-06-30
相关资源
最近更新 更多