我如何获取代码以检查特定的cookie,然后在找不到该横幅时显示横幅?

时间:2019-04-11 14:41:51

标签: javascript cookies

我在Zendesk中显示了一条警报,通知用户我们的Cookie政策。我需要仅对未接受Cookie策略的用户显示警报。关闭警报会设置一个cookie,因此在显示警报之前,我需要网站进行扫描。

我在if函数和getCookie等上尝试了几种变体,但是似乎都不起作用-它在关闭警报时设置cookie,但在我关闭警报时仍显示警报刷新。

我尝试了很多不同的代码示例。我不是开发人员,这是我第一次涉足js。

// Cookie Policy Banner Function

  function setAgreeCookie() {
    var expire=new Date();
    expire=new Date(expire.getTime()+1000*60*60*24*365);
    document.cookie="KimZD=True; expires="+expire;
  }

  // Cookie Policy Banner Behaviour

  if (document.cookie.indexOf("KimZD") < "1") {

   $.get( "/api/v2/help_center/"+$('html').attr('lang').toLowerCase()+"/articles.json?label_names=alert" ).done(function( data ) {

   $.each(data.articles, function(index,item) {

     var style1 = '<div class="ns-box ns-bar ns-effect-slidetop ns-type-notice ns-show"><div class="ns-box-inner"><span class="megaphone"></span></i><p><a href="'+ item.html_url + '">' + item.title + '</a>' + item.body + '</p></div><span class="ns-close"></span></div>'

     $('.alertbox').append(style1);
   });

   $('.ns-close').on('click',function(){
     setAgreeCookie();
    $(".alertbox").remove();
   });      

  }); 

  } 

我希望第一次从该浏览器访问该网站时显示该警报,单击x时将其关闭,存储cookie(KimZD),并且除非我清除cookie,否则不会再出现一年。

实际上发生的是,每次刷新页面时都会出现横幅。

0 个答案:

没有答案
相关问题