我使用下面的代码来显示按下.sidebar切换时的侧边栏,并在按下#page时隐藏侧边栏。
显示侧边栏效果很好,但当#page被按下时,它不会隐藏。当单击.sidebar-切换时,该变量似乎没有设置为1。
var state = 0;
if (state === 0) {
$('.sidebar-toggle').click(function() {
$('#page').animate({marginLeft: '230px'}, 400);
state = 1;
});
}
if (state === 1) {
$('#sidebar').click(function() {
$('#page').animate({marginLeft: '0'}, 400);
state = 0;
});
}发布于 2013-04-20 22:38:33
您忘记使用#page click.function ...最好的方法是把if放在click.function里面...试试这条路
var state = 0;
$('.sidebar-toggle').click(function() {
if (state===0) {
$('#page').animate({marginLeft: '230px'}, 400);
state = 1;
}
});
$('#page').click(function() {
if (state===1){
$('#page').animate({marginLeft: '0'}, 400);
state = 0;
}
});发布于 2013-04-20 22:40:06
可能是因为它从未执行过
if (state === 1) {
$('#sidebar').click(function() {
$('#page').animate({marginLeft: '0'}, 400);
state = 0;
});
}试着这样做-
var state = 0;
$('.sidebar-toggle').click(function() {
if (state === 0) {
$('#page').animate({marginLeft: '230px'}, 400);
state = 1;
}
});
$('#page').click(function() {
if (state === 1) {
$('#page').animate({marginLeft: '0'}, 400);
state = 0;
}
});https://stackoverflow.com/questions/16121478
复制相似问题