我有一个将用户名保存在本地存储中的应用程序。Safari
它适用于除private mode
.
有没有办法在 Safari 隐私模式下保存这个变量?我尝试使用cookie,但它也不起作用......
有什么解决办法吗?
我有一个将用户名保存在本地存储中的应用程序。Safari
它适用于除private mode
.
有没有办法在 Safari 隐私模式下保存这个变量?我尝试使用cookie,但它也不起作用......
有什么解决办法吗?
我实现了一个 LocalStorageHandler 来检查浏览器是否支持本地存储,如果不支持,那么我使用 Cookie。
这是检查它是否支持本地存储的函数:
localStoreSupport: function ()
{
var testKey = 'test', storage = window.sessionStorage;
try
{
storage.setItem(testKey, '1');
storage.removeItem(testKey);
return true;
}
catch (error)
{
return false;
}
}
这就是我处理错误的方式:
if (this.localStoreSupport())
{
localStorage.setItem(name, value);
}
else
{
document.cookie = name + "=" + encodeURIComponent(value) + expires + "; path=/";
}
我希望这可以帮助你。
从 Safari 11 开始,它们支持私有模式下的 localStorage,与其他浏览器相同 提交:https ://github.com/WebKit/WebKit/commit/91d15f887ff7174f7754b25b8dc8ab459951e5e1 讨论:https ://bugs.webkit.org/show_bug.cgi?id =157010