私はdiv
要素を持っています<div id='someId' style="visibility: hidden;"></div>
$(#someId).css('visibility'); //「hidden」を返します$(#someId).is(':hidden'); // falseを返します$(#someId).is(':visible'); //trueを返します
これはJQuery1.8のバグですか、それとも何かわかりませんでしたか?
私はdiv
要素を持っています<div id='someId' style="visibility: hidden;"></div>
$(#someId).css('visibility'); //「hidden」を返します$(#someId).is(':hidden'); // falseを返します$(#someId).is(':visible'); //trueを返します
これはJQuery1.8のバグですか、それとも何かわかりませんでしたか?
:hidden
セレクターは以下を参照できます:
display: none
type="hidden"
width: 0px; height: 0px
そのvisibility: hidden
場合は入りません。
ここでjQueryドキュメントを参照してください:http://api.jquery.com/hidden-selector/
編集
visibility
プロパティを確認するには:
if($("#someId").css('visibility') == 'hidden') {
/* some code */
}
次の jquery リンクを参照してください。
ここで、visibility: hidden または opacity: 0 の要素は、レイアウト内のスペースを消費するため、可視と見なされる理由が明確に述べられています。
jquery.com から:
Elements can be considered hidden for several reasons:
They have a CSS display value of none.
They are form elements with type="hidden".
Their width and height are explicitly set to 0.
An ancestor element is hidden, so the element is not shown on the page.
is(':visible') および is('hidden') は表示プロパティを参照として取得します