2011-08-05 17 views
1

は、ここでのコードを参照してください。何らかの理由でjQueryの/( ':目に見える')です見つける問題

http://jsfiddle.net/wQpTu/1/

を、それは常に( ':目に見える').isにfalseを返すかどうかそれは目に見える。

何らかの理由がありますか?私は別のことをしなければならないことは何ですか?

+0

を間違っセレクタ:)それはIDです:スパン#1 spanselect –

答えて

5

あなたは使用する必要があります。

var visibleElement = $('#holder').find("span#spanselect").is(":visible"); 

spanselectid、ないclassです。

$("#holder span#spanselect")はちょうど同じように動作します。レコードの場合、is(":visible")lengthに変更すると、それは0と等しく、セレクタが失敗することが容易にわかります。

例: "" あなたが使用しているhttp://jsfiddle.net/kobi/wQpTu/5/

+2

あなたがIDを使用しているので、ちょうどしかしそもそも$(「#のspanselect」)を使用しない理由はありません。 – Dennis

+0

@Dennis - これは非常に良い点ですが、エッジケースがあります。たとえば、##holderse(移動した場合)の中に '#spanselect 'が含まれていなければ、セレクタを失敗させたいかもしれませんが、 :) ' – Kobi

0

の代わりに "#"。 Thisは動作します:

var visibleElement = $('#holder').find("span.spanselect").is(":visible"); 
関連する問題