3

以下のHTMLがある場合:

<div style="display:none;">
    <span id="hello">Hey</span>
</div>

そして、私はそうしますalert($("#hello").css("display"));、それは「インライン」と言うでしょう。スパンは明らかに表示されませんが、display:none;プロパティが直接含まれていないため、表示可能であると表示されます。

親またはその親の親が表示されていない場合でも、特定のDOM要素が実際に表示されているかどうかをテストするにはどうすればよいですか?

4

4 に答える 4

4

次を使用できます。

if ($('#myitem').is(':visible')){

/*Do some sort of stuff in here */

}

まだアニメーション化されているアイテム(.hideまたはを使用するなど.fadeOut)は、アニメーションが完了するまで「表示」されます

于 2012-06-29T18:49:26.270 に答える
2

:visibleセレクターとisメソッドを使用できます。

if($("#hello").is(":visible")) {
    //It's visible!
}

このメソッドは、一致した要素のいずれかisがそのセレクターに一致するかどうかを示すブール値を返します。

于 2012-06-29T18:46:59.520 に答える
1

使用する$(selector).is(':visible')

于 2012-06-29T18:48:18.893 に答える
0

.is()関数を:hiddenまたは:visible疑似セレクターと一緒に使用します。

http://jsfiddle.net/jbabey/ucSVx/

$('#hello').is(':hidden')
于 2012-06-29T18:48:48.083 に答える