在Jquery中获取div的Visibility状态

时间:2014-08-24 19:18:57

标签: javascript jquery

我正在尝试获取div可见性的状态,它的显示是阻止还是没有这里是我的代码

 $('#btn').live('click', function (event) {

      var status = $('#menuDiv').is(":visible");
         alert(status);

 });

但它总是返回false,即使div是可见的 这是小提琴http://jsfiddle.net/50at8ydj/4/

4 个答案:

答案 0 :(得分:0)

  if ( $('#menuDiv').css('visibility') == 'hidden' )
  { 
     ...
  }
  else { ...}

答案 1 :(得分:0)

为什么不检查: $('#menuDiv').css("display") === 'none'(或==='block',取决于您的需要/常见情况)

这么简单....

答案 2 :(得分:0)

希望帮助您考虑将您的功能更改为:

jQuery('#btn').click(function (event) {
            var status = $('#menuDiv').is(":visible");
            $('#menuDiv').toggle(!status);
            alert(status);
});

实际上,切换必须接受一个布尔值" showOrHide"指示是否显示或隐藏元素。有关详细信息,请参阅http://api.jquery.com/toggle/#toggle-showOrHide

再见

答案 3 :(得分:0)

其实你只是有一个错字..

在HTML中,您编写了id-而不是id=

Fiddle