1

我有一个按钮,我希望我的变量click设置true为单击按钮false时以及再次单击按钮时(我想要切换功能)。

什么时候click == true,我希望它输出clicked到控制台,什么时候click == false我希望它输出not clicked

var click = false

这是我的切换功能:

$('.button').toggle(
    function(){
        click = true;
        $('.bmw').show();

    }, function() {
        click = false;
        $('.bmw').hide();

    });

我想要它做什么:

if(click = true) {
    console.log('clicked');
} else {
    console.log('not clicked');
}

当我加载页面时,控制台显示not clicked,但是当我按下按钮时它不会切换到true. 但是,当我切换按钮时,bmw 对象**.bmw会显示和隐藏,这样看起来工作正常。

我究竟做错了什么?

4

1 回答 1

4

您正在分配不比较 click 的值

你应该这样===

if(click == true) {
    console.log('clicked');
} else {
    console.log('not clicked');
}

但是,您甚至不需要使用if(click == true). 实际上,您可以直接使用if(click)

编辑:从我们在评论中讨论的内容来看,您似乎只在代码首次运行时调用了 if 语句,而不是每次切换时。我建议在内部创建一个带有 if 语句的单独函数,然后在切换的两个部分中调用此方法。

于 2012-07-11T12:12:46.417 回答