JQuery slideToggle()当前显示/隐藏状态属性?

Cra*_*len 31 jquery

在jquery 1.3.2中使用slideToggle()函数时,以编程方式查找DOM元素的当前切换状态的最简单方法是什么?

我希望有一个属性,但我似乎找不到一个.直接检查CSS显示或高度似乎是一个黑客,但也许这是一个人应该做的.

Cal*_*bHC 55

我想你可以这样做,

if($("#panel").is(":hidden"))
{
    // do stuff
}
Run Code Online (Sandbox Code Playgroud)

  • 注意[在调用slideToggle()之后,无论状态如何,隐藏的ALWAYS都返回false.](https://forum.jquery.com/topic/state-of-slidetoggle).请务必检查`is(":隐藏"))`在调用`.slideToggle();`之前. (12认同)
  • @AdamHuffman检查:隐藏在一个来自slidetoggle()的回调函数中,在幻灯片切换发生后给出最终状态,例如`$(element).slideToggle(function(){var final_state = $(this).is(':hidden ')?'hidden':'visible'; console.log(final_state);});` (3认同)