2014-05-08 19 views
0

我一直深入到jQuery & javascript为止,并且需要某个项目的帮助。其目的是让访客登陆一页,并有50%的机会看到div内容框。另外50%将会看到div内容盒视频。一旦他们查看了这个div,他们就会将一个cookie放在他们身上,这样当他们将来访问这个页面时,他们会看到他们第一次登陆的div。这将在30天后过期。我一直在使用jQuery Cookie。如何在50/50分割着陆上设置jQuery Cookie?

到目前为止,我已经设置了Math.random来生成随机数,并根据该数据为指定的类提供div。当CookieValue被设置但我似乎被卡住时,我一直在丢弃cookie。我在哪里错了?

谢谢!

编辑
现在,所有的工作除了cookie设置得太快。它正在读取cookie的新“设置”,然后才意识到已经设置了cookie。我会在哪里添加一个延迟,以便浏览器可以先检查是否有人下注?

var random = Math.random(); 
var cookieValue = $.cookie("cookie"); 

if (cookieValue != 1 || 2) { 
if (random < 0.5) { 
    cookieValue = 1; 
} 
if (random >= 0.5) { 
    cookieValue = 2; 
} 
} 

if (cookieValue === 1) { 
$('.content-box').show(); 
$('.content-box-video').hide(); 
$.cookie("cookie", 1, {expires : 30, path : '/' }); 
} 

if (cookieValue === 2) { 
$('.content-box').hide(); 
$('.content-box-video').show(); 
$.cookie("cookie", 2, {expires : 30, path : '/' }); 
} 
+0

貌似问题在于你的第二行应该是“cookieValue”(小写)而不是“CookieValue”,不是吗? –

+0

@ Mr.Birkoff糟糕,我的代码中实际上是小写字母。我在这里重写了它,并且意外地大写了。感谢捕捉,但! – user3614486

+0

如果我们知道在这种情况下被卡住的意思,那将会更容易帮助你。什么是不正确的工作? 另外:随机的条件将被忽略,如果随机== 0.5 –

回答

0

这些div的起始状态是什么?您是否在加载文档时调用此代码?

+0

起始状态显示:无。是的,它正在加载。 – user3614486

+0

好的!我现在正在一个地方,我所需要做的就是延迟cookie的设置,因为它正在同时读取它。我将如何/在哪里做到这一点? – user3614486

+0

我的意思是在同一时间阅读什么?同时又是什么?如果您希望获得帮助,您需要提出更具体的问题。 –