関数呼び出し時にli項目内の要素にクラスを追加しようとしています。私は正しい値を出力することができますが、子供の発見は<i>
です。私は<i>
正しい入れ子のを見つけて、クラスを追加することができれば、それを解決するだろう 'ショー' :)jquery要素を見つけて要素にクラスを追加する
JSコード:
filterMarkers = function(category) {
for (i = 0; i < markers1.length; i++) {
marker = gmarkers1[i];
// If is same category or category not picked
if (marker.category == category || category.length === 0) {
marker.setVisible(true);
// Show the tick icon
$(".filter").find("[data-value='" + category + "']").addClass('show');
}
// Categories don't match
else {
marker.setVisible(false);
}
}
}
HTMLコード:見れ
<ul class="drop-down">
<li class="filter blue" data-value="" onclick="filterMarkers('');">All <i class="fi-check"></i></li>
<li class="filter yellow" data-value="test-one" onclick="filterMarkers('test-one');">Sales <i class="fi-check"></i></li>
<li class="filter red" data-value="test-two" onclick="filterMarkers('test-two');">Incentives <i class="fi-check"></i></li>
<li class="filter grey" data-value="test-three" onclick="filterMarkers('test-three');">Conferences <i class="fi-check"></i></li>
<li class="filter orange" data-value="test-four" onclick="filterMarkers('test-four');">Team building <i class="fi-check"></i></li>
</ul>
'$をあなたのコードを簡素化(」フィルタリング[データ値= '」+カテゴリ+ "']")addClass( 'ショーは');'このコマンドのno形式を使用しますクラスフィルタにデータattrがあるのでfindを使う必要があります – guradio