0

我正在使用 Colorbox 实现一个脚本,该脚本在用户第一次访问网站时会显示一个不错的弹出窗口。我发现的这个脚本将 cookie 设置为持续 15 天——我想要的是能够自己手动管理“cookie-update”。就我而言,我想使用此脚本向用户显示我的网站已更新并使用 Colorbox 显示更改日志;就在第一次访问。像这样的东西:

  • 更新 #1 -> 新 cookie 告诉有一个新更新 -> 显示颜色框 1 次 -> 不再有,直到...
  • 更新 #2 -> 新 cookie 告诉我们有新的更新 -> 显示颜色框 -> ...等等...

问题的简短版本:如何将脚本从 15 天计时器更改为手动能够更改它,以便我可以决定何时使用新的更改日志显示我的 Colorbox?

原始脚本位于此处: http: //papermashup.com/automatic-jquery-site-subscription-lightbox/

4

2 回答 2

0

该脚本中有 Jquery 代码。

$("document").ready(function (){ 

       // load the overlay

        if (document.cookie.indexOf('visited=true') == -1) {
            var fifteenDays = 1000*60*60*24*15;
            var expires = new Date((new Date()).valueOf() + fifteenDays);
            document.cookie = "visited=true;expires=" + expires.toUTCString();
            $.colorbox({width:"580px", inline:true, href:"#subscribe_popup"});
        }

        $(".open_popup").colorbox({width:"580px", inline:true, href:"#subscribe_popup"});

 });

如果您想更改日期,请在此处更改。

var fifteenDays = 1000*60*60*24*15;
于 2012-12-09T16:39:05.533 回答
0

您需要在网站中输入日期 - 注意 JS 月份从零开始

演示

var latestUpdate=new Date(2012,11,10).getTime(); // 10th of December
var whatVersionSeen = parseInt($.cookie("visited"));
if (isNaN(whatVersionSeen)) whatVersionSeen = 0; // first time
if (whatVersionSeen < latestUpdate) { // whatever in the cookie < latest update
  $.cookie('visited', latestUpdate, { expires: 365 });
  $.colorbox({width:"580px", inline:true, href:"#subscribe_popup"});
}

上面的代码替换

if (document.cookie.indexOf('visited=true') == -1) {
  var fifteenDays = 1000*60*60*24*15;
  var expires = new Date((new Date()).valueOf() + fifteenDays);
  document.cookie = "visited=true;expires=" + expires.toUTCString();
  $.colorbox({width:"580px", inline:true, href:"#subscribe_popup"});
 }

完全并期望找到$.cookie

于 2012-12-09T17:49:41.570 回答