如何创建一个cookie,用于存储一个浏览器会话或一天的随机添加的body类。我的目的是随机地为每个用户提供一个正文背景图像,然后存储该图像,这样它就不会改变每次页面重载或转到第2页。
我正在使用这个jQuery plugIn:https://github.com/carhartl/jquery-cookie
我的jQuery代码:
var classes = ['body-bg1', '', 'body-bg2', 'body-bg3', 'body-bg4',];
var randomnumber = Math.floor(Math.random()*classes.length);
$('body').addClass(classes[randomnumber]);
编辑:
我使用的代码:
if($.cookie('userBackground') === null) {
var classes = ['body-bg1','body-bg2', 'body-bg3', 'body-bg4'];
var randomnumber = Math.floor(Math.random()*classes.length);
var chosenClass = classes[randomnumber];
$('body').addClass(chosenClass );
$.cookie('userBackground', chosenClass, { expires: 7, path: '/' });
} else {
//todo verify cookie value is valid
$('body').addClass($.cookie('userBackground'));
}
我得到的错误:
Uncaught ReferenceError: require is not defined
Uncaught TypeError: Object function (a,b){return new e.fn.init(a,b,h)} has no method 'cookie'
答案 0 :(得分:0)
if($.cookie('userBackground') === null) {
var classes = ['body-bg1','body-bg2', 'body-bg3', 'body-bg4'];
var randomnumber = Math.floor(Math.random()*classes.length);
var chosenClass = classes[randomnumber];
$('body').addClass(chosenClass );
$.cookie('userBackground', chosenClass, { expires: 7, path: '/' });
} else {
//todo verify cookie value is valid
$('body').addClass($.cookie('userBackground'));
}