1

我有一个 Chrome 扩展程序,它非常适合 Mac 和 Linux 用户,但不适用于 Windows 用户。当我进入控制台并在 localStorage 中设置项目时,它工作正常,但是当用户尝试使用扩展时,项目并没有通过我的实际代码在 localStorage 中设置。

我目前的假设是使用window.localStorage 可能会使其工作,但我没有数据支持。

这里的任何人都可以添加颜色来说明为什么这可能有效或无效吗?

4

1 回答 1

2

如果扩展的全局上下文不是与普通 Javascipt 应用程序相反的window对象,那么您将需要引用它。

您还可以缓存它以节省一些树遍历:

if (typeof localStorage === 'undefined' && window.localStorage)
    localStorage = window.localStorage;

现在您应该能够使用相同的代码而无需前缀。

(我相信 Chrome 扩展有一个单独但类似的存储机制)。

这可能也很有趣:
https ://developer.chrome.com/extensions/storage.html

于 2013-06-17T05:47:15.083 回答