2017-04-05 12 views
0

Ce script de cookie Javascript fonctionne très bien jusqu'ici, vous ajustez juste quand vous voulez que le cookie expire dans la ligne (expiresDays * 24). Cependant, je voudrais que le cookie expire quand le navigateur est complètement fermé, mais que le cookie persiste pendant que vous êtes encore sur le site, même si vous allez sur une autre page ou rechargez la page d'accueil. J'ai lu cela est faisable et peut être fait avec des cookies de session, en mettant la valeur à 0 ou aucune valeur, mais étant un apprenant sur javascript, je ne sais pas comment le faire, faire plus de programmeurs expérimentés savent comment ajuster le script ci-dessous pour faire ce que je voudrais?Cookie de session seulement Javascript

<script type="text/javascript"> 
function setCookie(cookieName, cookieValue, expireDays,isGlobal) { 
     var expireDate = new Date(); 
     expireDate.setTime(expireDate.getTime() + 
(expireDays*24*60*60*1000)); 
     var expires = "expires="+expireDate.toUTCString(); 
     if(isGlobal){ 
      document.cookie = cookieName + "=" + cookieValue + "; " + 
expires+"; path=/"; 
     }else{ 
      document.cookie = cookieName + "=" + cookieValue + "; " + 
expires; 
     } 
    } 

    function getCookie(cookieName) { 
     var name = cookieName + "="; 
     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); 
      if (c.indexOf(name) == 0) return c.substring(name.length, 
c.length); 
     } 
     return ""; 
} 

function checkCookie(cookieName) { 

    if (getCookie(cookieName) != "") { 
     return true; 
    } else { 
     return false; 
    } 
} 
</script> 
+0

Hi watchglass49, Ce message sur SO peut vous aider. http://stackoverflow.com/questions/14196671/session-only-cookies-with-javascript –

+0

Merci Fergal, je vais jeter un oeil. –

Répondre

0

Je résolu ce problème, tout ce qui était nécessaire était de remplacer les valeurs dans cette ligne:

de (expireDays * 24 * 60 * 60 * 1000))

et changer pour:

(expireDays « = 0 »))

sinon je quitté le scrip inchangé, les biscuits dure toute la durée de la visite du site, y compris si vous naviguez sur le site. Mais si vous fermez complètement le navigateur, le cookie expire.