4

IE8がlocalStorageを完全にサポートしているかどうかはわかりません。しかし、私は次の方法を使用して検出します

function supports_html5_storage() 
{
    try { 
    return 'localStorage' in window && window['localStorage'] !== null; 
    } 
    catch (e) {
    return false; 
    } 
}

これで、IEはウィンドウの「localStorage」に対してtrueを返します

ただし、window['localStorage']に対して未定義を返します

したがって、このメソッドを更新する必要がありますか、それともIE8は実際にローカルストレージをサポートしていますか?

4

3 に答える 3

6

localStorageの設定と読み取りを試みることができます。

一部のブラウザは、Cookieが無効になっている場合、またはfile:protocolを使用している場合に、セキュリティエラーを返します。

function hasStorage(){
    try{
        localStorage.setItem('test', '7');
        if(localStorage.getItem('test')=== '7'){
            localStorage.removeItem('test');
            return true;
        }
    }
    catch(er){}
    return false;
}

alert(hasStorage())

于 2013-03-09T19:17:30.327 に答える
5

これは有名な localStorage プラグイン https://github.com/marcuswestin/store.js/ で、データを非常に簡単に追加、編集、削除できます。最も重要なのは、IE6+ で localstorage を使用できることです。

store.js は利用可能な場合は localStorage を使用し、IE6 および IE7 の userData の動作にフォールバックします。ページの読み込みを遅くするフラッシュはありません。ネットワーク リクエストを肥大化させる Cookie はありません。元 :

store.set('user', { name: 'marcus', likes: 'javascript' })
于 2014-02-16T13:02:50.803 に答える
2

Modernizrを使用できます。

if (Modernizr.localstorage) {
  // localStorage is available
}
于 2013-09-17T13:34:00.487 に答える