我遇到以下jQuery代码的问题。此代码是更大的Yii项目的一部分。我希望这个顾问在我进入网站时可见,然后当它关闭时将状态保存在cookie中。然后我重新加载页面,它已关闭。如何使用此代码执行此操作?
var adviserIsVisible = true,
adviserCookie = getCookie("adviser"),
if(adviserCookie != "") {
adviserIsVisible = adviserCookie;
}
if(adviserIsVisible == true){
$("#adviser-slide-button").html("<");
$(".adviser-slide").animate({"left": "0px"});
adviserIsVisible = false;
}
else {
$("#adviser-slide-button").html(">");
$(".adviser-slide").animate({"left": "-206px"});
adviserIsVisible = true;
}
$("#adviser-slide-button").live("click",function(){
if(adviserIsVisible == true){
$("#adviser-slide-button").html("<");
$(".adviser-slide").animate({"left": "0px"});
adviserIsVisible = false;
}
else{
$("#adviser-slide-button").html(">");
$(".adviser-slide").animate({"left": "-206px"});
adviserIsVisible = true;
}
setCookie("adviser", adviserIsVisible, 1);
});
答案 0 :(得分:0)
我设置和检索cookie的方式是我创建的两个函数如下:
function SetTheCookie(key, value)
{
// Expire date for cookie
var expires = new Date();
// Set expire date for cookie
expires.setTime(expires.getTime() + (1 * 24 * 60 * 60 * 1000));
// Set cookie key and value which is passed in by parameters
document.cookie = key + '=' + value + ';expires=' + expires.toUTCString();
}
function GetTheCookie(key)
{
// Check to see if there is a cookie matching the value passed in by parameter
var keyValue = document.cookie.match('(^|;) ?' + key + '=([^;]*)(;|$)');
return keyValue ? keyValue[2] : null;
}
使用SetTheCookie
和GetTheCookie
的示例: