3

セレクターを変数に格納し、「。active」のクラスを見つける必要がある場合にそのオブジェクトを使用したいと思います。'.active'であるオブジェクトを返します。

基本的に、次のようなセレクターを作成するにはどうすればよいですか:$('。classname.active')

var $varName = $('.multipleDivs');
$varName.hasClass('active'); // this returns true, but not the object

var $varName = $('.multipleDivs'); 
$('.active', $varName); // this returns an empty array
4

6 に答える 6

2
var $varName = $('.multipleDivs');
$varName.hasClass('active'); // this returns true, but not the object

ここで、クラスmultipliedDivsを持つdivのいずれかでクラスがアクティブになっているかどうかを確認しています

var $varName = $('.multipleDivs'); 
$('.active', $varName); // this returns an empty array

ここでは、multipleDivsクラス要素の子であるアクティブクラスを持つ要素を探しています。

于 2012-10-12T21:52:04.637 に答える
2

あなたの最初の推測はそれをする正しい方法です。

$(".multipleDivs.active")

または、

$varName.filter(".active")
于 2012-10-12T21:48:52.513 に答える
2

.hasClass()設計によりブール値を返します-要素に名前付きクラスがあるかどうかをテストします。フィルタを絞り込むには、.filter()('。multipleDivs'にもクラス'.activeがある.find()場合)または('.active'要素が'.multipleDivs'の子である場合)のいずれかが必要です。

于 2012-10-12T21:49:44.483 に答える
1

以下はそれを行い、あなたが言及した構文を使用する必要があります

var clsName = 'multipleDivs';
var elementsWithBothClasses = $('.' + clsName + '.active');

すでにすべてのjQueryオブジェクトがあるmultipleDivs場合は、次を使用できます。$.filter

var multipleDivs = $('.multipleDivs');
multipleDivs.filter(".active"); // filters in place, so it changed multipleDivs
于 2012-10-12T22:38:57.017 に答える
0
var someRandomClass = "bill";
var results = $('.' + someRandomClass + '.active');

フィドル: http: //jsfiddle.net/gromer/fSrAY/

于 2012-10-12T21:49:44.543 に答える
0

これを行う1つの方法は次のとおりです。

var $varName = $('.multipleDivs');
$varName.each(function(){
  if($varName.hasClass('active');){
    $varName.whateverFunctionYouWantToDo();
  }
});
于 2012-10-12T21:54:35.150 に答える