我正在尝试使用 jQuery 为站点设置 cookie,仅当用户来自特定站点时。在这种情况下,让我们使用 -http://referrersite.com- 作为他们必须来自的站点,以便创建 cookie 作为示例。cookie 值存储在一个变量中,到目前为止一切正常。
有一个条件语句检查用户是否来自被推荐的站点、cookie 是否已经存在以及 cookie 是否不存在并且用户不是来自被推荐的站点。如果用户来自被引用的站点,则会创建 cookie 并将其存储在变量中。如果 cookie 已经存在,则将其存储在变量中。如果 cookie 不存在并且用户不是来自所引用的站点,我将为变量分配一个静态字符串 - 这就是问题所在。
当变量从非引用站点发出警报并且没有现有 cookie 时,它返回:[object Object],而不是静态字符串。
我正在使用的代码如下:
$(document).ready(function() {
var referrer = document.referrer;
if(referrer == "http://referrersite.com") {
$.cookie("code","123456", { expires: 90, path: '/' });
cookieContainer = $.cookie("code");
alert(cookieContainer);
} else if($.cookie("code")) {
cookieContainer = $.cookie("code");
alert(cookieContainer);
} else if($.cookie("code") == null && referrer != "http://referrersite.com") {
cookieContainer = "67890";
alert(cookieContainer);
}
});
总之,我的目标是如果用户不是来自被推荐的站点并且不存在,则cookieContainer
使用字符串进行设置。由于某种原因,它包含一个对象。"67890"
$.cookie("code")
请让我知道我是否缺少某些东西,因为我的代码看起来应该可以工作。
谢谢!