2013-05-28 3 views
1

Я использую BootUp.js (https://github.com/TradeMe/bootup.js) для загрузки и хранения файлов CSS и JavaScript в HTML5 LocalStorage. Сайт ориентирован на мобильные устройства, поэтому экономия времени и ускорение этой скорости отлично! Тем не менее, я заметил, что странный случай: CSS (никогда не замечал его с JS) становится поврежденным в хранилище, и поэтому сайт ужасно показывает, пока хранилище не будет очищено, а файлы CSS будут отображены с сервера.HTML5 LocalStorage кажется поврежденным

Я видел, как это происходило очень спорадически на Safari на iPhone 4 (iOS 6), Chrome на Galaxy S3 и Chrome на Nexus 7 - поэтому он, похоже, не ограничен каким-либо конкретным устройством, браузером или ОС. Это проблема, с которой раньше сталкивался? Возможно ли, что данные как-то стали коррумпированными? Есть ли какие-либо известные проблемы с WebKit (я думаю), которые могут вызвать это?

Я планирую реализовать обход, сохранив контрольную сумму, которая может быть сгенерирована в JS, чтобы гарантировать, что данные полностью там. Если нет, очистите его и извлеките с сервера.

+0

Я не знаком с начальной загрузки, но она выполняет некоторую форму Минимизация в CSS? Это может объяснить, почему влияет css, а не js. – K3N

+0

Мой CSS уже изменен. Bootup просто сохраняет его в локальном хранилище в виде строки. – user1003623

ответ

0

Я бы первым использовать это: http://arty.name/localstorage.html

Мобильные браузеры, как правило, сократить пространство для хранения из-за очевидных ограничений памяти. Ваш CSS и Javascript могут быть слишком большими, даже если они будут уменьшены.

Другая вещь, которую я могу придумать для такого поведения, состоит в том, что localStorage может стать поврежденным при запуске сохранения и обновлении страницы одновременно. Я не знаком с точными работами браузеров, но я предполагаю, что они могут остановить сохранение в середине.

Кроме того, посмотрите здесь: http://hacks.mozilla.org/2012/03/there-is-no-simple-solution-for-local-storage/