Можете ли вы хранить файлы JavaScript и CSS в localStorage, чтобы повысить производительность онлайн-веб-приложения?

Я работаю над веб-приложением, которое действует во многом как родное приложение для iOS и Android. Однако файлы Javascript (jQuery + мой собственный) и файл css вместе довольно велики для мобильного использования, что замедляет загрузку приложения, если у пользователя не включен 3G.

Поэтому я начал думать о сохранении их файлы в автономном режиме. Однако, помимо cache.manifest (который, насколько мне известно, срабатывает только тогда, когда нет подключения к Интернету для включения автономного использования), я не нашел способа сделать это. В идеале я бы хотел проверить, кэшированы ли уже файлы / сохранены, а если нет, использовать их, а затем сохранить в следующий раз.

Возможно ли это? Это значительно сократит время загрузки моего приложения, поскольку сам индексный файл очень мал. Я все еще работаю над уменьшением размера файлов путем оптимизации, но пока это очень поможет.

РЕДАКТИРОВАТЬ:

Просто чтобы предоставить более подробную информацию, извините, если я был неясен раньше.

Я начал создавать это веб-приложение, используя шаблон HTML5, и в моем файле .htaccess есть все заголовки файлов JS и CSS со сроком действия 1 год.

Но похоже, что открытие приложения с главного экрана iOS загружает файлы .js и .css каждый раз, как это было в случае, когда они не кэшированы. Открытие веб-сайта на рабочем столе или даже в веб-браузере iOS Safari, похоже, правильно кэширует файлы, поскольку изменения в Javascript и CSS отображаются только после ручного обновления страницы.

Похоже, что открытие, закрытие и открытие веб-приложение с домашнего экрана действует как обновление, поэтому файлы загружаются каждый раз, даже если они хранятся в cache.manifest для использования в автономном режиме, а даты истечения срока действия файлов установлены далеко в будущее.

РЕДАКТИРОВАТЬ 2:

Мысль I ' d включить заголовки кеша для файлов. Кажется, все в порядке.

Cache-Control max-age = 31536000, общедоступный
Срок действия истекает 18 мая 2012 г., 17:34:20 GMT
Варьировать Accept-Encoding, User-Agent
Content-Encoding gzip Keep-Alive timeout = 2, max = 98

12
задан Marc Hoogvliet 20 May 2011 в 15:06
поделиться