Moi, toujours au chômage mais, c'est comme la retraite, toujours plein de choses à faire (CVs, démarches, informatique, twitter...)!
Je suis nouvellement bénévole dans une association de type bibliothèque sonore et j'ai un peu mis à jour leur site web.
Seulement, j'aimerai mettre des boutons pour grossir le texte et que cette nouvelle taille d'affichage soit retenue pour les pages suivantes.
Comme j'ai un cahier des charges local mais aussi national, je reste sur du Html pur.
J'ai bossé pour récupérer des informations, le script pour créer et récupérer le cookie (miam) et l'appel du JS.
Finalement, j'ai ceci:
> Voilà le script JS:
- Code: Tout sélectionner
function setActiveStyleSheet(title) {
var i, a, main;
for(i=0; (a = document.getElementsByTagName("link")); i++) {
if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
a.disabled = true;
if(a.getAttribute("title") == title) a.disabled = false;
}
}
}
function getActiveStyleSheet() {
var i, a;
for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled) return a.getAttribute("title");
}
return null;
}
function getPreferredStyleSheet() {
var i, a;
for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
if(a.getAttribute("rel").indexOf("style") != -1
&& a.getAttribute("rel").indexOf("alt") == -1
&& a.getAttribute("title")
) return a.getAttribute("title");
}
return null;
}
function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
window.onload = function(e) {
var cookie = readCookie("style");
var title = cookie ? cookie : getPreferredStyleSheet();
setActiveStyleSheet(title);
}
window.onunload = function(e) {
var title = getActiveStyleSheet();
createCookie("style", title, 365);
}
var cookie = readCookie("style");
var title = cookie ? cookie : getPreferredStyleSheet();
setActiveStyleSheet(title);
> Voilà l'appel dans les pages:
- Code: Tout sélectionner
<a id="tmoyen" class="moyen" href="#" onclick="setStylesheet('Taille moyenne'); setCookie('text_size', 'Moyen');
return false;" onkeypress="setStylesheet('Taille moyenne'); setCookie('text_size', 'moyen'); return false;"
title="Texte de taille moyenne">A</a>
Tout est dit, le rendu est disponible ici pour le moment, le site initial là.
Je croise les doigts (aïe).
Ps: j'ai déjà navigué chez AlsaCréations mais c'est toujours la même chose.