jQueryの:jQueryオブジェクトが含まれている場合(含みます)をチェック正確なDOM要素
質問
Iは、DOM要素への参照、および選択の結果であるjQueryオブジェクトを持っている、と私はその特定のDOM要素がそのjQueryオブジェクトであるかどうかを確認します。全体のjQueryオブジェクトをループと平等のチェックのショート、これを行うためのjQueryで簡単な方法はありますか?
私は.contains
、:contains
、.has
と:has
を試してみました、そしてそれらのどれも仕事をしているように見えるん。また、私は私が働いているすべての要素が同じDOMツリーのレベルであることを言及する必要があり、その親/子供を心配する必要はありません。
解決
Gumbosに類似の答えが、スリムます:
if ( obj.filter(function() { return this == el; }).length ) {
// obj contains el
}
他のヒント
$yourJqueryObject.is(yourDomElement)
見る .is()は1.6で添加します。
これを試してください:
var result = $("selector").find("*").filter(function() {
return this === elem;
}).length === 1;
elem
は、あなたが探しているDOM要素です。
Davidの答えに似ていますが、でもスリムます:
if ( obj.filter(el).length ) {
// obj contains el
}
ちょっとハックが、私の作品ます:
$.inArray($('#single-element').get(0), $('.many-elements').get()) != -1
所属していません StackOverflow