检查元素是否可见

时间:2014-07-31 16:11:27

标签: javascript jquery

我试图让一个if语句工作,这样当用户点击一个标题时,它会检查它是否打开,如果它是隐藏其他物体的话。

if ($(".faq-body",this).is(':visible')) {
    $(".faq-item").click(function() {
        $(".faq-body",this).hide();
    });
} else {
        //something later
}

1 个答案:

答案 0 :(得分:3)

你的if语句在错误的地方,它应该在click事件中,如下所示:

// Adding this line to make sure we're binding this to $(document).ready()
$(function(){
  $(".faq-item").click(function(){
    if ($(".faq-body",this).is(':visible')) {
      $(".faq-body",this).hide();
    }
  });
}

这假设.faq-body位于.faq-item

之内

在您的版本中,它会在页面加载时立即检查条件,并且仅在事件成功的情况下绑定事件。