Déclen­cher le cache appli­ca­tif HTML 5 par javas­cript

Parfois je me pose des ques­tions exis­ten­tielles. Hier c’était de savoir si le cache appli­ca­tif de HTML 5 pouvait être activé dyna­mique­ment par javas­cript lors de l’exé­cu­tion de la page, au lieu d’être déclaré de façon statique dans le code HTML.

L’idée derrière cette inter­ro­ga­tion est que le cache appli­ca­tif ne soit activé que sur certains critères (compa­ti­bi­lité du navi­ga­teur avec le code javas­cript utilisé, requête spéci­fique de l’uti­li­sa­teur, etc.).

Petit test :

<!DOCTYPE html><html>
<head><meta charset=utf8><title>TEST offline</title></head>
<body><script>
document.documentElement.setAttribute("manifest", "cache.manifest") ;
window.applicationCache.update() ;
</script><body>
</html>

J’ai été agréa­ble­ment surpris par Mozilla Fire­fox, qui accepte le tout sans bron­cher. La décon­nexion permet de véri­fier que le cache appli­ca­tif fonc­tionne sans heurs.

Mes espoirs se sont arrê­tés là, Chrome déclenche une excep­tion sur la mise à jour à seconde ligne de script. Il faut décla­rer le cache de façon statique dans le HTML. Pas le choix, dommage.


Publié

dans

par

Étiquettes :

Commentaires

2 réponses à “Déclen­cher le cache appli­ca­tif HTML 5 par javas­cript”

  1. Avatar de karl

    Un cache application est créé lors du chargement de la page. Firefox a un bug, qui est supposé renvoyé INVALID_STATE_ERR. Une des raisons est que le document chargé depuis le cache, n’aurait pas l’attribut manifest= » » et donc perdrait tout son intérêt qui est justement de faire fonctionner le cache.

  2. Avatar de karl

    ah oublié. Safari et Opera renvoient le bon code d’erreur.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *