Сохраните все файлы, используя localStorage - PullRequest
5 голосов
/ 06 декабря 2010

Я хотел бы использовать localStorage для «кэширования» некоторых файлов JS и CSS в веб-приложении, которое в основном используется на мобильных устройствах (т. Е. Ограничения пропускной способности). Я думаю, что это будет работать примерно так:

  1. Страница загружается с небольшим setup.js кодом, содержащим код, проверяющий localStorage, чтобы узнать, был ли bigScriptFile.js сохранен ранее.
    1. Если оно не сохранено, bigScriptFile.js загружается и сохраняется для следующего посещения.
    2. Если он был сохранен, то bigScriptFiles.js считывается из localStorage и загружается / запускается, как если бы он был загружен как обычный файл (т.е. <script src="http://example.com/bigScriptFile.js"></script>)

Что я не знаю, как это сделать, это шаг 1.1 - сохранение файла JS. (Я знаю, что могу хранить только строки в localStorage, и я знаю, как использовать JSON.stringify().)

Конечно, это не так просто, как использовать escape ():
localStorage.setItem('bigScriptFile', escape('myJScode')) хранить и
unescape(localStorage.getItem['bigScriptFile']) при получении

Даже если это так просто, как мне использовать JS для получения содержимого bigScriptFile.js в виде строки? Возможно, сделав ajax-вызов PHP-скрипта, который возвращает содержимое?

Ответы [ 2 ]

11 голосов
/ 06 декабря 2010

Вы должны поставить правильные заголовки кеша в js-файлы или посмотреть манифест кеша HTML5 .

Спецификация W3C .

3 голосов
/ 19 января 2013

Видели ли вы, http://addyosmani.github.com/basket.js/ может работать на то, что вы намеревались сделать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...