2017-10-18 26 views
1

Bonjour, j'utilise jquery cookie.js pour stocker cookie.JQuery Cookie.js Enregistrer cokkie

J'ai cherché le code et avec le plugin cookie.js cela fonctionne très bien, Mais j'ai un problème qui quand je rafraichis la page le cookie enregistre automatiquement et le popup ne s'affiche pas. Quand un utilisateur entre sur le site une fenêtre apparaît et l'utilisateur doit cliquer sur le bouton continuer pour entrer sur le site,

Je ne permets pas à l'utilisateur d'entrer sur le site avant de cliquer sur le bouton continuer.

Voici mon code html

<div id="popup-container"> 
<div class="wrapper"> 
<div id="popup-window"> 
    <div class="splash-bg"> 
    <h1>Are You Over 18? Click Continue if you are or return to previous 
     page</h1> 
    <a type="button" class="close">Continue</a> 
</div> 
</div> 

Et ceci est le code js j'utilise

<script type="text/javascript"> 
    jQuery(document).ready(function(){ 
     jQuery('#popup-container a.close').click(function(){ 
      jQuery('#popup-container').fadeOut(); 
      jQuery('#active-popup').fadeOut(); 
     }); 

     var visits = jQuery.cookie('visits') || 0; 
     visits++; 

     jQuery.cookie('visits', visits, { expires: 1, path: '/' }); 

     console.debug(jQuery.cookie('visits')); 

     if (jQuery.cookie('visits') > 1) { 
     jQuery('#active-popup').hide(); 
     jQuery('#popup-container').hide(); 
     } else { 
      var pageHeight = jQuery(document).height(); 
      jQuery('<div id="active-popup"></div>').insertBefore('body'); 
      jQuery('#active-popup').css("height", pageHeight); 
      jQuery('#popup-container').show(); 
     } 

     if (jQuery.cookie('noShowWelcome')) { jQuery('#popup- 
     container').hide(); jQuery('#active-popup').hide(); } 
    }); 

    jQuery(document).mouseup(function(e){ 
     var container = jQuery('#popup-container'); 

     if(!container.is(e.target)&& container.has(e.target).length === 0) 
     { 
     container.fadeOut(); 
     jQuery('#active-popup').fadeOut(); 
     } 

    }); 
</script> 
+0

ne vérifiez pas '> 1'. vérifier une valeur réelle, ou si c'est un nombre ou un objet – sheplu

+0

Lorsque quelqu'un rafraîchir la page le cookie enregistré automatiquement je cherche une solution qui arrête cela se produire ... – usman

+0

j'ai essayé cela mais ça ne fonctionne pas – usman

Répondre

0

Lorsque vous avez plusieurs cookies visites cookies peut ne pas être le premier cookie dans la matrice de cookies, donc vous devez essayer d'obtenir ce cookie en utilisant les deux façons suivantes

jQuery.cookie('visits') 

jQuery.cookie(' visits') 
+0

désolé je suis nouveau à js pouvez-vous plz expliquez-moi ceci ... – usman

+0

console.log (document.cookie) ce que vous pouvez voir? –

+0

je veux simplement une condition pour arrêter l'enregistrement automatique en actualisant la page à moins que l'utilisateur ne clique sur le bouton continuer ... voici le lien où j'obtiens le code http://www.jqueryscript.net/lightbox/Cookie-Based- Modal-Popup-Plugin-pour-jQuery-Popup-Window.html – usman