2014-05-08 38 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

我的意思是在同一時間閱讀什麼?同時又是什麼?如果您希望獲得幫助,您需要提出更具體的問題。 –