if (p5goback = true)
{
$("#p5-6").fadeOut("slow");
p5goback = false;
}
else
{
$("#p5-6").fadeIn("slow");
var p5goback = true;
}
使用上面的代码我希望能够使用一个按钮来隐藏和取消隐藏div。
上面的代码似乎没有用,有什么想法吗?
我不相信HTML是必需的,但如果你想要一个jsfiddle留下评论。
干杯
答案 0 :(得分:2)
您的条件是分配,而不是检查。使用==
进行比较:
if(p5goback == true) { ... }
由于p5goback
是布尔值,因此您可以完全忽略== true
部分:
if(p5goback) { ... }
由于您总是将p5goback
设置为它的反面,所以您可以简单地逃脱:
$('#p5-6').fadeToggle('slow');
p5goback = !p5goback;
请注意,如果{em>其他比任何 else 更改p5goback
(或#p5-6
可见性),则可能会引入意外行为(即,如果有任何情况, 仅 #p5-6
可见性或 p5goback
布尔值更改的值
为了确保这两个变量之间的状态总是一致的,你可以写这样的东西,但是可读性会受到影响,你可能最好只使用这个条件:
$.fn[ p5goback ? 'fadeOut' : 'fadeIn' ].call($('#p5-6'), 'slow');
p5goback = !p5goback;
以上代码调用$.fn.fadeOut
或 $.fn.fadeIn
,具体取决于p5goback
的值,然后将p5goback
设置为反布尔值它的当前价值。
答案 1 :(得分:0)
假设您在要使用的button.onclick方法中。 您可以使用
代替fadeIn / fadeOut $("#p5-6").toggle("slow");
您还需要更正if语句:if (p5goback == true)
答案 2 :(得分:0)
如果使用.fadeToggle()
功能,那将会更漂亮;)
$("#p5-6").fadeToggle("slow");