Jquery.Click()在使用一次后才开始工作

时间:2016-03-21 11:24:32

标签: javascript jquery html

我有一个非常简单的jquery.Click()函数

//hide divs
$("#a-1").hide();

$(".v-1").click(function(){
    $("#a-1").show();
    $(".v-1").addClass("c-it");
    $(".c-it").click(function(){
        $("#a-1").hide();
        $(".v-1").removeClass("c-it");
    });
});

因此,当点击v-1时,必须显示a-1,它将添加一个名为c-it的类。在我点击c-it之后,a-1将再次隐藏并且c-it类将被删除。所以现在我们又开始了,但现在当我点击v-1时,没有人知道为什么会这样?

HTML

<i class="glyphicon glyphicon-plus v-1">&nbsp;<span>This is a question</span></i>
        <div id="a-1"><p>Awnser</p></div>

2 个答案:

答案 0 :(得分:5)

只需更好地使用toggle()toggleClass()

$("#a-1").hide();

$(".v-1").click(function() {
  $("#a-1").toggle('hide');
  $(".v-1").toggleClass("c-it");

});

答案 1 :(得分:3)

您应该使用单击处理程序,只需切换可见状态和类。

$(".v-1").click(function(){
    $("#a-1").toggle();
    $(".v-1").toggleClass("c-it");
});