JavaScript. Подробное руководство, 6-е издание
Шрифт:
// В начале этого процесса первым всегда генерируется событие "checking",
window.applicationCache.onchecking = function {
status("Проверка наличия новой версии.");
return false;
};
// Если файл объявления не изменился и приложение уже имеется в кэше,
// генерируется событие "noupdate" и процедура проверки заканчивается,
window.applicationCache.onnoupdate = function {
status("Версия приложения не изменилась.")
return false;
};
// Если приложение отсутствует в кэше или если изменился файл объявления,
// броузер загрузит и поместит в кэш все, что перечислено в файле объявления.
// Событие "downloading" свидетельствует о начале этой процедуры загрузки,
window.applicationCache.ondownloading = function {
status("Загружается новая версия");
window.progresscount = 0; // Используется в обработчике "progress" ниже
return false;
};
// В ходе загрузки периодически генерируются события "progress”,
// обычно после загрузки каждого файла.
window.applicationCache.onprogress = function(e) {
// Объект события должен соответствовать событию "progress" (подобному тому,
// что используется XHR2), что позволяет вычислять процент выполнения,
// но на всякий случай мы заведем счетчик количества вызовов,
var progress = "";
if (е && е.lengthComputable) // Событие "progress": вычислить процент
progress = " " + Math.round(100*e.loaded/e.total) + "%”
else // Иначе сообщить кол-во вызовов
progress = " (" + ++progresscount + ")"
status("Загружается новая версия" + progress);
return false;
}
// Когда приложение впервые загружается в кэш, по окончании загрузки
// броузер сгенерирует событие "cached",
window.applicationCache.oncached = function {
status("Приложение загружено и установлено локально");
return false;
};
// Когда обновляется приложение, находящееся в кэше, то по завершении загрузки
// броузер сгенерирует событие "updateready". Обратите внимание, что при этом
// пользователь по-прежнему будет работать со старой версией приложения,
window.applicationCache.onupdateready = function {
status("Была загружена новая версия приложения. Перезапустите его.");
return false;
};
// Если броузер выполняется в автономном режиме и файл объявления не может
// быть проверен, генерируется событие "error". Это же событие генерируется,
// когда некэшированное приложение ссылается на отсутствующий файл объявления,
window.applicationCache.onerror = function {
status("Невозможно загрузить файл объявления " +
"или сохранить приложение в кэш");
return false;
};
// Если кэшированное приложение ссылается на несуществующий файл объявления,
// генерируется событие "obsolete" и приложение удаляется из кэша.
// В следующий раз приложение будет целиком загружаться из сети, а не из кэша,
window.applicationCache.onobsolete = function {
status("3то приложение больше не кэшируется. " +
"Перезапустите его, чтобы получить последнюю версию из сети.");
Поделиться:
Популярные книги
Кодекс Охотника. Книга III
3. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
7.00
рейтинг книги
Геном хищника. Книга пятая
5. Я - Легенда!
Фантастика:
рпг
фэнтези
попаданцы
6.00
рейтинг книги
Неучтенный элемент. Том 3
3. Антимаг. Вне системы
Фантастика:
фэнтези
5.00
рейтинг книги
Монстр из прошлого тысячелетия
5. Соприкосновение миров
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Кодекс Охотника. Книга XVII
17. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Чайлдфри
Любовные романы:
современные любовные романы
6.51
рейтинг книги
Запечатанный во тьме. Том 2
2. Хроники Арнея
Фантастика:
уся
эпическая фантастика
фэнтези
5.00
рейтинг книги
На границе империй. Том 10. Часть 7
Вселенная EVE Online
Фантастика:
боевая фантастика
космическая фантастика
попаданцы
5.00
рейтинг книги
Журнал «Если», 2002 № 08
114. Журнал Если
Фантастика:
научная фантастика
5.00
рейтинг книги
Ким
Приключения:
исторические приключения
7.62
рейтинг книги
Криптозой
Фантастика:
научная фантастика
6.25
рейтинг книги
Оживший камень
1. Артефактор
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Ваше Сиятельство 7
7. Ваше Сиятельство
Фантастика:
боевая фантастика
аниме
5.00
рейтинг книги
Уникум
1. Уникум
Фантастика:
альтернативная история
4.60