2012-06-11 10 views
7

Dla Chrome mogę używać IndexedDB i WebSQL, dla przeglądarki Firefox, mogę używać IndexedDB, a co z IE? Stworzyłem aplikację, która używa WebSQL i działa dobrze na komputerowej przeglądarce Chrome i Safari, iOS Safari i przeglądarce Androida. Następnie chcę przenieść go do Desktop Firefox i IE. Zastanawiam się nad IndexedDB, ale znalezienie IE tak naprawdę nie obsługuje tego. Jaką mam alternatywę?Czy IE obsługuje indexedDB, WebSQL lub bazę danych podobną do SQLite?

+0

jakie wersje IE potrzebujesz wspierać? – Spudley

Odpowiedz

7

IE10 obsługuje IndexedDB. Możesz także użyć localStorage w IE8 +. W przypadku starszych wersji można użyć zastrzeżonego zachowania userData: http://www.javascriptkit.com/javatutors/domstorage2.shtml

Należy pamiętać, że baza danych WebSQL jest przestarzała i specyfikacja nie jest już obsługiwana.

+0

Większość użytkowników IE jest teraz na IE8 lub IE9, więc IndexDB nie pomaga. localStorage nie obsługuje zapytań SQLite, więc muszę przerobić moją aplikację, aby nie korzystała z lokalnej bazy danych? WebSQL jest amortyzowany, ale jest to jedyna rzecz, która obecnie działa na komputerach z Chrome, Safari i urządzeniach mobilnych. Chciałbym korzystać z IndexedDB, ale nie widzę żadnego planu wsparcia dla urządzeń mobilnych. Czy tak nie jest? – netmobile

+0

Brak ogłoszonych planów, nie. IDB w Chrome jest wspierany przez LevelDB, więc prawdopodobnie będzie musiał je pobrać na Androida, zanim zobaczysz, że Google przekazuje go do mobilnego pakietu WebKit. FF jest wspierany przez SQLite, więc może być dobrze dopasowany do Androida. Kto wie, czy kiedykolwiek będzie wsparcie na iOS. Wydaje się, że nie wydaje się, że dobrze pasuje do natywnego modelu aplikacji Apple, który i tak faworyzuje. – buley

3

Jak zauważa duri WebSQL otrzymał zaklęcie doom **, ale jest to często jedyna praktyczna technologia dla wieloplatformowego lokalnego przechowywania - , szczególnie w przypadku telefonów komórkowych.

IE does not support WebSQL, a ponieważ osoby, które piszą specyfikację, nie mogą się pogodzić z implementacją, prawdopodobnie nie zobaczą implementacji w najbliższym czasie. IE10 nie jest jeszcze głównym nurtem, więc nie jest także IndexedDB. (Co więcej, IndexedDB ma dwie różne implementacje w Chrome (stary) i FF (nowy), co sprawia, że ​​nawet nie jest on całkowicie stabilny.)

localStorage is the only truly cross platform option, z mobilną Operą będącą jedyną osobą, która nie implementuje. Z mojego doświadczenia wynika, że ​​nie należy liczyć na to, że osiąga dobre wyniki w przypadku średnich i dużych zbiorów danych.

** Tak jak w przypadku "McBeth" w kinach, poproszę, aby nigdy nie wypowiadać tych słów w pobliżu jakiejkolwiek implementacji IndexedDB: "Specyfikacja bazy danych Web SQL nie jest już obsługiwana, a obsługa może zostać usunięta w przyszłych wersjach."

+0

Wydaje mi się, że WebSQL będzie miał znacznie dłuższą żywotność niż cała dyskusja o byciu przestarzałą, tylko dlatego, że działa i jest to jedyna praktyczna technologia, jeśli potrzebujesz również telefonu komórkowego. Po prostu nie widzę żadnego twórcy przeglądarki usuwającego go w najbliższym czasie. – netmobile

+0

Całkowicie uzgodnione. Ludzie cytują specyfikę zagłady, ale nigdy nie mówią o tym, że kod jest często dodawany, ale rzadko usuwany. – buley

0

Zespół Google Chrome bardzo wspiera indeks IndexedDB, więc oczekuję, że Chrome na Androida wkrótce go otrzyma, jeśli jeszcze go nie ma. Nie ma potrzeby, aby LevelDB "obsługiwał" w systemie Android, to tylko kolejna biblioteka, jak wiele innych, z których korzysta Chrome.

Powiązane problemy