Un cookie pour une fonction javascript
Bonjour,
je souhaite proposer à mes visiteurs une case à cocher permettant de définir si oui ou non, les liens externes s'ouvrent dans une nouvelle fenêtre.
La fonction est créée et fonctionnelle (quel comble !).
La voilà :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
function linksInNewWindow()
{
var liens = document.getElementsByTagName('a');
// On récupère tous les liens (<a>) du document dans une variable (un array), ici liens.
// Une boucle qui parcourt le tableau (array) liens du début à la fin.
for (var i = 0 ; i < liens.length ; i++) {
// Si les liens ont un l'attribut hreflang (caractéristique, sur mon site, de liens externes), alors on fait les ouvre dans une nouvelle fenetre...
if (liens[i].hreflang) {
liens[i].title = '[ext] '+liens[i].title; // on indique la mention "ext" dans le titre du lien, pour prévenir (accessoire)
// ...au clique de la souris.
liens[i].onclick = function() {
window.open(this.href);
return false; // On ouvre une nouvelle page ayant pour URL le href du lien cliqué et on inhibe le lien réel.
};
}
}
} |
Elle est liée à une case à cocher (checkbox) que voici :
Code:
1 2
|
<input name="newwin" type="checkbox" onclick="linksInNewWindow();" onkeypress="linksInNewWindow();" id="linksnewwin" /> |
J'aimerais que lorsqu'un visiteur clique sur cette case à cocher, son choix soi mémorisé. Autrement dit, je voudrais qu'une fois que le visiteur a coché, la fonction javascript soit effective durant toute la navigation sur le site, pages après pages. Pour l'instant, on coche la case et la la fonction est effective uniquement sur la page en cours, et un changement de page l'annule.
J'imagine que cela est réalisable avec un cookie... Stratégiquement, il faudrait un cookie qui active la fonction à chaque fois qu'une page de mon site est chargée, si la case a été cochée une fois ? Enfin je ne sais pas trop, je m'en remets à vos lumières.
Merci de votre aide !