2013-03-09 3 views
4

Я не уверен, что IE8 полностью поддерживает localStorage. Но я использую следующий метод для обнаруженияПоддержка IE8 и localStorage

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

Теперь IE возвращает истину «LocalStorage» в окне

Но возвращает неопределенное значение для окна [ «LocalStorage»]

Так я должен обновить этот метод Или IE8 действительно поддерживает локальную память?

+6

IE8 поддерживает «localStorage». Могу ли я использовать это быстрый способ проверить такие: http://caniuse.com/#feat=namevalue-storage –

ответ

6

Вы можете попробовать установить и прочитать localStorage.

Некоторые браузеры возвращают ошибку безопасности , если файлы cookie отключены или вы работаете с файлом: protocol.

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

оповещения (hasStorage())

2

Вы можете использовать Modernizr:

if (Modernizr.localstorage) { 
    // localStorage is available 
} 
4

Вот известный LocalStorage плагин https://github.com/marcuswestin/store.js/ вы можете добавлять, редактировать и удалять ДАННЫЕ очень легко и самое главное, вы можете использовать localstorage в IE6 +.

store.js использует localStorage, если он доступен, и возвращается к поведению userData в IE6 и IE7. Нет вспышки, чтобы замедлить загрузку страницы. Нет файлов cookie для оттачивания сетевых запросов. Ex:

store.set('user', { name: 'marcus', likes: 'javascript' })