我目前正在构建一个动态菜单栏(垂直和水平)。在默认位置它是垂直的。用户可以选择显示水平位置以及隐藏和垂直位置。我目前正在使用 javascript/jquery 来做到这一点。为了使菜单栏保持在水平位置,我用cookie来计数。问题是,当我在 javascript 中使用 click 函数时,我想更改 cookie 的值。我不知道如何做到这一点。谁能帮我解决这个问题。所有帮助将不胜感激。
<?php
setcookie('menu', 1, time()+(86400));
?>
$(document).ready(function() {
$('#temp').hide();
if(<?php echo $_COOKIE['menu'];?> == 1){
$('#topmenu').hide();
$('#sidemenu').floating().dropShadow().floating();
$('#sidemenu_bottom').hide();
}else{
$('#topmenu').show();
$('#topmenu').dropShadow();
$('#sidemenu').hide();
$('#sidemenu').removeShadow();
}
$('#move').click(function(){
$('#sidemenu').hide("drop",{},2000);
$('#sidemenu').removeShadow();
$('#topmenu').show();
$('#topmenu').dropShadow();
$('#sidemenu_bottom').show();
$('#sidemenu_bottom').floating().dropShadow().floating();
});
});
这就是我到目前为止所拥有的,默认的 cookie 和 javascript 都可以工作。现在只是改变cookie值。
谢谢。
这就是我迄今为止所做的;
function set_cookie ( name, value, exp_y, exp_m, exp_d){
var cookie_string = name + "=" + escape ( value );
if ( exp_y ){
var expires = new Date ( exp_y, exp_m, exp_d );
cookie_string += "; expires=" + expires.toGMTString();
}
document.cookie = cookie_string;
}
var x = document.cookie;
if(x == "menu=1"){
$('#topmenu').show();
$('#topmenu').dropShadow();
}else{
$('#topmenu').hide();
$('#sidemenu').floating().dropShadow().floating();
$('#sidemenu_bottom').hide();
}
$('#move').click(function(){
set_cookie ( "menu", "1", 2012, 01, 15 );
$('#sidemenu').hide("drop",{},2000);
$('#sidemenu').removeShadow();
$('#topmenu').show();
$('#topmenu').dropShadow();
$('#sidemenu_bottom').show();
$('#sidemenu_bottom').floating().dropShadow().floating();
});
但是我仍然遇到问题。它没有做我想做的事。
问候。
最佳答案
忘记 php。检查一下: http://www.w3schools.com/jS/js_cookies.asp
关于php - 使用 javascript/jquery 动态操作 php cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2557428/