我确定这是一个简单的问题,并且有一个明显的答案,但事实是我无法解决这个问题。基本上,如果单击div并且变量存在,请执行此操作,否则执行此操作。但它都不起作用。
想法?
$("#lisea").click(
var set = false;
if(set) {
function() {
$("body").animate({
opacity: 1
}, 500);
var set = false;
}
}
if(!set) {
function() {
$("body").animate({
opacity: 0.25
}, 500);
var set = true;
}
}
);
答案 0 :(得分:3)
您需要在回调函数中使用您的代码 - 而不仅仅是作为参数。你也只是在你的条件中定义一个函数 - 你需要调用它。
无论如何,我认为这可能是你想要的:
var set = false;
$("#lisea").click(function(){
$('body').stop().animate({
opacity: (set) ? 1 : 0.25
}, 500);
set = !set;
});
答案 1 :(得分:0)
删除所有'var',它应该有效。您在不同的范围内声明了许多变量。 也不确定'set'是否是某个关键字..所以最好使用其他一些变量名。比如'if_flag_set'
答案 2 :(得分:0)
试试这个..你似乎一次又一次地声明了同一个变量.. 将您的声明移到click事件的范围之外..
var set = false;
$("#lisea").click(
if(set) {
function() {
$("body").animate({
opacity: 1
}, 500);
set = false;
}
}
if(!set) {
function() {
$("body").animate({
opacity: 0.25
}, 500);
set = true;
}
}
);