4

ユーザー名をローカル ストレージに保存するアプリがあります。を除くすべてのブラウザで問題なく動作Safariprivate modeます。

この変数を Safari プライベート モードで保存する方法はありますか? Cookieを使用してみましたが、機能しません...

回避策はありますか?

4

2 に答える 2

9

ブラウザがローカル ストレージをサポートしているかどうかを確認する 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=/";
    }

これがお役に立てば幸いです。

于 2015-12-03T09:11:03.297 に答える