[Special Summer Sale] 40% OFF All Magento 2 Themes

Cart

JS Cookie hide/show div

  • This topic is empty.
Viewing 2 posts - 1 through 2 (of 2 total)
  • Author
    Posts
  • #9620
    vemund
    Participant

    Trying to make a jQuery cookie hide/show box using JS Cookie, but I somehow can’t make it work. The box won’t display at all. I’m using Shopify.

    #pop-up {
        display: none;
    }
    

    Jquery:

    <script type='text/javascript'>//<![CDATA[
      $(window).load(function(){
      // if no cookie
      if (!$.cookie('alert')) {
          $( "#pop-up" ).show();
          $("#hide").click(function() {
              $( "#pop-up" ).slideUp( "slow" );
              // set the cookie for 24 hours
              var date = new Date();
              date.setTime(date.getTime() + 24 * 60 * 60 * 1000); 
              $.cookie('alert', true, { expires: date });
          });
      }
      });//]]> 
    </script>
    

    The rest:

    <div id="pop-up">
      <div id="center" class="box">
        40% off today only<br>
        <a id="hide" href="#">OK, thanks!</a>
      </div>
    </div>
    
    #9621
    niki-van-stein
    Participant

    It does not work because you can only store strings in cookies. You store the string "true" instead of the boolean value true.

    Try the following code where I replaced the check with != "true".

    <script type='text/javascript'>//<![CDATA[
      $(window).load(function(){
      // if no cookie
      if ($.cookie('alert')!="true") {
          $( "#pop-up" ).show();
          $("#hide").click(function() {
              $( "#pop-up" ).slideUp( "slow" );
              // set the cookie for 24 hours
              var date = new Date();
              date.setTime(date.getTime() + 24 * 60 * 60 * 1000); 
              $.cookie('alert', "true", { expires: date });
          });
      }
      });//]]> 
    </script>
    

    A working jsfiddle: http://jsfiddle.net/bqam0qb4/1/

Viewing 2 posts - 1 through 2 (of 2 total)
  • You must be logged in to reply to this topic.