Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Javascript e cookie

  1. #1

    Javascript e cookie

    Ciao ragazzi.
    Entrando in un sito si apre una fancybox con Jquery tipo pop up facendo oscurare l'index e dando delle info. Alla chiusura della finestra tutto ok, il problema nasce quando dopo aver navigato nel sito si ritorna allla home page, riappare ogni volta la finestra con il messaggio.

    Io non sono capace a fare un javascript che veda da un cookie (a tempo) che l'utente già è stato in quella pagina e che quindi non gli fa visualizzare il messaggio.

    So che però non è difficile, qualcuno potrebbe aiutarmi?
    Grazie :-)
    Bisogna aver pazienza con gli uomini

  2. #2
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    Direi che qui hai tutte le spiegazioni e gli esempi che ti servono…

    codice:
    docCookies = {
      getItem: function (sKey) {
        if (!sKey || !this.hasItem(sKey)) { return null; }
        return unescape(document.cookie.replace(new RegExp("(?:^|.*;\\s*)" + escape(sKey).replace(/[\-\.\+\*]/g, "\\$&") + "\\s*\\=\\s*((?:[^;](?!;))*[^;]?).*"), "$1"));
      },
      /**
      * docCookies.setItem(sKey, sValue, vEnd, sPath, sDomain, bSecure)
      *
      * @argument sKey (String): the name of the cookie;
      * @argument sValue (String): the value of the cookie;
      * @optional argument vEnd (Number, String, Date Object or null): the max-age in seconds (e.g., 31536e3 for a year) or the
      *  expires date in GMTString format or in Date Object format; if not specified it will expire at the end of session; 
      * @optional argument sPath (String or null): e.g., "/", "/mydir"; if not specified, defaults to the current path of the current document location;
      * @optional argument sDomain (String or null): e.g., "example.com", ".example.com" (includes all subdomains) or "subdomain.example.com"; if not
      * specified, defaults to the host portion of the current document location;
      * @optional argument bSecure (Boolean or null): cookie will be transmitted only over secure protocol as https;
      * @return undefined;
      **/
      setItem: function (sKey, sValue, vEnd, sPath, sDomain, bSecure) {
        if (!sKey || /^(?:expires|max\-age|path|domain|secure)$/.test(sKey)) { return; }
        var sExpires = "";
        if (vEnd) {
          switch (typeof vEnd) {
            case "number": sExpires = "; max-age=" + vEnd; break;
            case "string": sExpires = "; expires=" + vEnd; break;
            case "object": if (vEnd.hasOwnProperty("toGMTString")) { sExpires = "; expires=" + vEnd.toGMTString(); } break;
          }
        }
        document.cookie = escape(sKey) + "=" + escape(sValue) + sExpires + (sDomain ? "; domain=" + sDomain : "") + (sPath ? "; path=" + sPath : "") + (bSecure ? "; secure" : "");
      },
      removeItem: function (sKey) {
        if (!sKey || !this.hasItem(sKey)) { return; }
        var oExpDate = new Date();
        oExpDate.setDate(oExpDate.getDate() - 1);
        document.cookie = escape(sKey) + "=; expires=" + oExpDate.toGMTString() + "; path=/";
      },
      hasItem: function (sKey) { return (new RegExp("(?:^|;\\s*)" + escape(sKey).replace(/[\-\.\+\*]/g, "\\$&") + "\\s*\\=")).test(document.cookie); }
    };
    
    // docCookies.setItem("test1", "Hello world!");
    // docCookies.setItem("test2", "Hello world!", new Date(2020, 5, 12));
    // docCookies.setItem("test3", "Hello world!", new Date(2027, 2, 3), "/blog");
    // docCookies.setItem("test4", "Hello world!", "Sun, 06 Nov 2022 21:43:15 GMT");
    // docCookies.setItem("test5", "Hello world!", "Tue, 06 Dec 2022 13:11:07 GMT", "/home");
    // docCookies.setItem("test6", "Hello world!", 150);
    // docCookies.setItem("test7", "Hello world!", 245, "/content");
    // docCookies.setItem("test8", "Hello world!", null, null, "example.com");
    // docCookies.setItem("test9", "Hello world!", null, null, null, true);
    
    // alert(docCookies.getItem("test1"));

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.