3

以下を使用して、要素が非表示かどうかを判断しました。

if ($("#sidebar").is(':hidden')) {

#sidebar が非表示かどうかを確認する代わりに、クラス「black」があるかどうかを判断する方法はありますか?

4

6 に答える 6

9

Api :.hasClass('black')トリックを実行しますWorking Demo http://jsfiddle.net/xvA8d/2/

リンク: http://api.jquery.com/hasClass/

一致した要素のいずれかに指定されたクラスが割り当てられているかどうかを判断します。

于 2012-07-02T10:04:11.723 に答える
6

いくつかの方法があります:

それらにはすべて、独自の長所と短所があります。

  • hasClass: 通常は最良の選択です。要素に他のクラスがあるかどうかに関係なく、要素に指定されたクラスがあるかどうかを確認します。
  • is: セレクターをチェックします。セレクターエンジンを呼び出すため、hasClass よりも遅くなりますが、実際にはそれほど違いはありません。必要に応じてクラスをチェックするだけでなく、他のセレクターと組み合わせることができるため、より柔軟です。
  • className: 要素が正確に指定されたクラスのみを持っているかどうかを確認します。通常、あなたが望むものではありませんが、それ方法であるため言及されています.
于 2012-07-02T10:06:57.433 に答える
4
if ($("#sidebar").hasClass('black')) {
于 2012-07-02T10:04:41.413 に答える
4

次のいずれかを使用できます.hasClass('black')

if($('#sidebar').hasClass('black');

.is()または、柔軟性を高めるために使用できます。

if($('#sidebar').is('.black');

.is()jQuery が提供する他のさまざまなセレクターを使用して要素をフィルター処理できます。.hasClass()ただし、この回答が述べているように、より高速であることに注意してください。

于 2012-07-02T10:06:56.857 に答える
3
if($("#sidebar").hasClass('black'))
于 2012-07-02T10:04:24.607 に答える
3
if ($("#sidebar").hasClass('black')) {

ドキュメント. _

于 2012-07-02T10:04:34.870 に答える