Как кэшировать несколько страниц HTML с изображениями, характерными для страницы, и общими ресурсами в кэше приложения HTML5? - PullRequest
1 голос
/ 08 февраля 2012

В моем приложении HTML5 у меня есть несколько файлов HTML, которые представляют книги.Каждая «книга» содержит изображения, характерные для этой книги.Каждый файл книги также содержит ссылки на файлы CSS и JavaScript, которые являются общими для всех книг.

Я хочу кэшировать книги в кэше приложения HTML5, чтобы их можно было просматривать без подключения к Интернету.Я предполагаю, что мне нужно создать файл манифеста для каждого файла книги HTML, содержащий ссылки на общие ресурсы и изображения в книге.Теги в файлах HTML будут выглядеть следующим образом:

<html manifest="Book1.appcache">

или:

<html manifest="Book2.appcache">

и Book1.appcache, например:

CACHE MANIFEST
Js/Book.js # Shared
Css/Book.css # Shared
Images/Book1-cover.png # Book-specific

и Book2.appcacheкак:

CACHE MANIFEST
Js/Book.js # Shared
Css/Book.css # Shared
Images/Book2-cover.png # Book-specific 

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

1 Ответ

1 голос
/ 14 февраля 2012

Ваш вопрос не ясен на 100%, но вот как я его интерпретировал. Вы можете хранить 2 отдельных файла для каждой книги, но при таком хранении вы должны будете записать в кеш таймер book.js и book.css, так что вам нужно сделать следующее:

Book1.html:

<html manifest="Book.appcache">
<img src="book1-cover.png">

Book2.html:

<html manifest="Book.appcache">
<img src="book2-cover.png">

Book.appcache:

CACHE MANIFEST
Js/Book.js
Css/Book.css
Book1.html
Book2.html
Images/Book1-cover.png
Images/Book2-cover.png

Таким образом, вы просто создаете 2 отдельных html-файла и кэшируете их.

...