0

嗨,我需要一些帮助来设置一个消息框,告诉查看者我的网站使用 cookie,这是由于新的欧盟法律规定必须征得他们的许可才能保存 cookie。我以前从未手动设置过 cookie,而且我很难找到我想要/需要的东西。

基本上,当查看者第一次查看站点时,顶部会出现一个框,说明站点使用 cookie,他们可以查看 cookie 的作用,接受或不接受。

我已经准备好了盒子,我现在需要的是一个脚本,如果查看者单击是并接受,那么 cookie 将永远记住这一点,除非他们从浏览器中删除 cookie,还有一个脚本,如果他们单击否,它将记住并且不会在该会话的剩余时间中显示。

我希望这是有道理的。

4

2 回答 2

0

执行此操作的一种方法如下。


1) 创建一个 JavaScript 方法来检查是否启用了 cookie以及用户是否已经接受了它们

var cookieLaw = {
 setCookies : function (showCookieMsg) {
  if(navigator.cookieEnabled == true) {
   if(document.cookie.indexOf('cookie-permission') == -1) {
    showCookieMsg();
   }
  }
 },

2) 如果启用了 cookie 但未接受,则会显示一条消息

 showMessage : function () {
  $('body').append('<div id="cookie-message">[your_cookie_message]<a id="continue-link" href="#">X Don't show this message again.</a></div>');
  $('#cookie-message').fadeIn();
  $('#continue-link').click(function() {
   $('#cookie-message').fadeOut();
   document.cookie = "cookie-permission=accepted; expires=Thu, 31 Jan 2030 23:59:59 UTC; path=/";
  });
 }
};

3)当页面准备好时执行代码:

jQuery(document).ready(function() {
 cookieLaw.setCookies(cookieLaw.showMessage);
};

4)通过添加使消息不可见:

#cookie-message {display:none;}

到您的 CSS 文件和其他格式(如果需要)。


请记住,此方法针对启用了 JavaScript 的浏览器。对于非 JS 浏览器,需要添加一些服务器端代码。

于 2013-10-11T17:49:50.380 回答
0

尝试这个:

javascript.alert("By continuing to browse our site, you accept to our use of cookies.")
于 2013-08-08T13:36:40.923 回答