Dotclear

Vous n'êtes pas identifié(e).

Annonce

13 février 2024 Sortie de Dotclear 2.29

#1 2017-05-07 07:45:58

Mirovinben
M comme Mathusalem
Lieu : Dole (Jura)
Inscription : 2007-02-06
Site Web

Ajouter/lire/supprimer un cookie dans un thème

Bonjour,

J'utilise actuellement dans mon photoblog un script qui permet d'afficher et de masquer (masqué par défaut) le menu placé en bas de page.

<script type="text/javascript">
//<![CDATA[
$(document).ready(function() {
    $(".more").hide();
    $(".read-more").click(function () {
        $(this).closest(".less").addClass("active");
        $(this).closest(".less").next().stop(true).slideDown("1000");
    });
    $(".read-less").click(function () {
        $(this).closest(".less").removeClass("active");
        $(this).closest(".less").next().stop(true).slideUp("1000");
    });
});
//]]>
</script>

J'aimerais que le masquage ou le démasquage reste actif le temps de la session pour ne pas obliger le visiteur à cliquer à chaque fois sur le lien "afficher/cacher". Je suppose que la meilleure solution est de passer par un cookie.

-1- soit codé en javascript, comme ce que j'avais pondu il y a longtemps...

function MetCookie(nom, valeur, duree, chemin, domaine, securise) {
  if (duree==null) duree=1;
  var D=new Date();
  D.setTime(D.getTime() + (duree * 60 * 1000));
  document.cookie= nom + "=" + escape (valeur) + "; expires=" + D.toGMTString() +
  ((chemin) ? "; path=" + chemin : "") +
  ((domaine) ? "; domain=" + domaine : "") +
  ((securise) ? "; secure=" + securise : "");
}
      
function LitCookie(nom) {
  var L = document.cookie.length;
  var N = nom + "=";
  var Z = N.length;
  var F = "";
  var R = "";
  if (document.cookie.indexOf(N) > -1) {
    F = document.cookie.substring(document.cookie.indexOf(N) + Z);
    R = F.substring (0, ((F.indexOf (";") > -1) ? F.indexOf (";") : L));
    return unescape(R);
  }
  else {return ("")}
}

mais c'était il y a plus de dix ans et le neurone qui s'en était chargé est maintenant aux abonnés absents...

-2- soit en PHP mais je n'y trave que couic.

Conseils, aide, suggestions sont les bienvenus...

Hors ligne

#2 2017-05-08 05:41:02

Arfy
Membre
Lieu : Obernai
Inscription : 2009-01-05
Site Web

Re : Ajouter/lire/supprimer un cookie dans un thème

Essaye peut être un le sessionStorage je pense qu'il est fait pour ça/toi ;)
Doc:
https://developer.mozilla.org/en-US/doc … ionStorage

Exemple:
https://developer.mozilla.org/en-US/doc … torage_API
(remplacer localStorage par sessionStorage)


"On peut user de tout mais faut pas en abuser!"

Hors ligne

#3 2017-05-08 13:31:51

Philippe
Stagiaire
Lieu : Toulon
Inscription : 2004-06-13
Site Web

Re : Ajouter/lire/supprimer un cookie dans un thème

La solution proposée par Arfy est intéressante, merci pour les liens :)

Autre solution : comme Dotclear embarque par défaut jQuery et le plugin jquery.cookie.js, tu peux facilement insérer, dans ta fonction document.ready le code pour écrire ou lire le cookie. Cf : http://stackoverflow.com/questions/1458 … ith-jquery

Hors ligne

#4 2017-05-09 08:17:38

Mirovinben
M comme Mathusalem
Lieu : Dole (Jura)
Inscription : 2007-02-06
Site Web

Re : Ajouter/lire/supprimer un cookie dans un thème

Arfy et Philippe, merci beaucoup de ces pistes que je vais emprunter sans tarder...

Mais où c'est-y que j'ai mis mon neurone ?
Et mon dico anglais-français ?
Décidément c'est le foutoir dans ma tête.

A suivre donc...

Hors ligne

#5 2017-05-09 09:16:01

jcn
Membre
Inscription : 2008-09-04
Site Web

Re : Ajouter/lire/supprimer un cookie dans un thème

Bonjour,

perso je m'étais inspiré de cet article https://www.alsacreations.com/article/l … orage.html

bon courage.

Hors ligne

Vous n'êtes pas identifié(e).

Pied de page des forums

Sites map