2012-11-09 9 views
5

Wszyscy mówią, że window.localStorage jest obsługiwany przez IE (do IE8)localStorage nie obsługiwane przez IE9?

przetestować go na IE9 ale:

console.log(typeof window.localStorage) 

undefined 

co to znaczy?

Jaki jest najlepszy sposób na przechowywanie danych lokalnych dla wszystkich przeglądarek?

+0

sprawdź tryb zgodności –

+0

możliwy duplikat [magazynu lokalnego w IE9 nie powiedzie się, gdy strona internetowa jest dostępna bezpośrednio z systemu plików] (http: //stackoverflow.com/questions/8706006/local-storage-in-ie9-fails-when-the-site-jest -accesssed-od -file-s) – mercator

Odpowiedz

7

Lokalne przechowywanie jest przechowywane relative to an origin.

Oznacza to, że musisz otworzyć stronę, używając http://someorigin/pathtoyourpage.html. Nie działa na IE, jeśli otwierasz stronę w file://pathtoyourpage.html (i nie powinno działać w innych przeglądarkach).

Musisz więc uzyskać dostęp do swojej strony za pomocą serwera WWW (może to być localhost).

+1

Nie mam serwera, opracowuję aplikację po stronie klienta z html5, nie można w tym przypadku przechowywać danych? – Valeriane

+0

Masz na myśli, że nie możesz zainstalować prostego serwera http? W tym przypadku nie będzie można korzystać z localStorage na swoich stronach. –

+0

Nie mogę zainstalować serwera http, Nie jest to celem mojego projektu. – Valeriane

0

Co z Storage.js?

https://sites.google.com/site/daveschindler/jquery-html5-storage-plugin

„Zapewnia prosty interfejs do przechowywania danych, takich jak preferencje użytkownika. Wtyczka przechowywania jest przydatny do zapisywania i retreiving dane z przeglądarki użytkownika. W przypadku nowszych przeglądarek, HTML 5 jest localStorage jest używany. Jeśli localStorage ISN Obsługiwane są pliki cookie ograniczone do tej samej domeny. "