使用jQuery.hasClass的If语句赢得';我不能正常工作

使用jQuery.hasClass的If语句赢得';我不能正常工作,jquery,class,if-statement,boolean,Jquery,Class,If Statement,Boolean,当#box元素隐藏或可见时,我尝试执行不同的操作,因此我制作了此脚本并附加到show/hide按钮的onClick参数: var box = null; function showHide_Click() { box = $("#postBox").hasClass("hidden"); if (box = true) { showBox(); $("#postBox").removeClass("hidden"); } else {

#box
元素隐藏或可见时,我尝试执行不同的操作,因此我制作了此脚本并附加到show/hide按钮的
onClick
参数:

var box = null;

function showHide_Click() {
    box = $("#postBox").hasClass("hidden");

    if (box = true) {
        showBox();
        $("#postBox").removeClass("hidden");
    } else {
        hideBox();
    }
}

它可以用来显示元素,但反过来不行。有什么问题吗?

box=true
true
赋值给
box
,然后
如果
s结果(
true

如果(box)
,您只需编写
,因为它已经是布尔值了

如果不是布尔值,你就需要写

if (x === y)

box=true
true
赋值给
box
,然后
if
s结果(
true

如果(box)
,您只需编写
,因为它已经是布尔值了

如果不是布尔值,你就需要写

if (x === y)
使用

代替

box = true
使用

代替

box = true

查看您的if语句。你要么需要一个双等号,要么干脆把它去掉

if (box)

查看您的if语句。你要么需要一个双等号,要么干脆把它去掉

if (box)

看看您的示例,我建议您使用交替显示/隐藏的
jQuery
方法。试试这个

function showHide_Click() {
    $("#postBox").slideToggle();
    $("#box").slideToggle();
}

仅供参考。
box=true
代码中的问题是,它不会计算任何条件检查,但会将
true
分配给
box
变量。

查看您的示例,我建议您使用交替显示/隐藏的
jQuery
方法。试试这个

function showHide_Click() {
    $("#postBox").slideToggle();
    $("#box").slideToggle();
}

仅供参考。

您的代码中的问题是
box=true
,它不会计算任何条件检查,但会将
true
分配给
box
变量。

是否要使用单独的
postBox
box
ID(
$(“#box”).hasClass(“隐藏”)
$(“#postBox”)。removeClass(“隐藏”)
)?对不起,两者都是
#邮箱
是否要使用单独的
邮箱
邮箱
ID(
$(“#邮箱”)。hasClass(“隐藏”)
$(“#邮箱”)。removeClass(“隐藏”)
)?对不起,两者都是
#邮箱
邮箱
是一项赋值
box==true
是一个条件表达式。我知道它。我刚才让他把它换了。
box=true
是一项任务
box==true
是一个条件表达式。我知道它。我刚让他替换它。谢谢你的帮助(+1),但我有一个小动画来显示/隐藏元素,所以我不能只使用
。切换
你可以使用
滑动切换
来设置动画和切换。检查我编辑的答案。@Nathan-希望这对你有帮助。哇!这很有帮助,我要用这个。非常感谢!感谢您的帮助(+1),但我有一个小动画来显示/隐藏元素,所以我不能只使用
。toggle
您可以使用
slideToggle
来设置动画和切换。检查我编辑的答案。@Nathan-希望这对你有帮助。哇!这很有帮助,我要用这个。非常感谢!