2008-09-14 4 views
6

jQueryを使用して4つの可能なdivからどのdivが見えるかを調べる必要があります。そのdivの1つだけがいつでも表示されます。divを4つのdivから可視化する

$("#FeatureImage1:visible, #FeatureImage2:visible, #FeatureImage3:visible, #FeatureImage4:visible").attr("id"); 

これをリファクタリングする方法はあります:

これは私がこれまでに動作する必要があり何ですか?これを理解する簡単な方法はありますか?

答えて

15

それぞれに同じクラスを割り当てるには、その後DIV:

$("div.myClass:visible").attr("id"); 
+1

もちろん、私が間違っている最も明白な答えです。 – RedWolves

1

適用、それはコンテキストセレクタを使うのではなく偽のクラスを追加する方が良いでしょう。例えば、<div>要素がid="foo"の要素の唯一の子要素である場合、$("#foo > div:visible").attr("id")を使用すると、コードの目的がよりよく反映されます。

関連する問題