0

これは少し複雑ですか?
クラス「.product-grid .item-box」がたくさんあります

説明に「NEWprod」というテキストが存在するため、説明クラス名が「.product-grid .product-item .description」である人だけにクラスを追加したい

なぜjqueryでそれを行うのですか?

私は試した

$(document).ready(function () {

if ($(' div.description:contains("חדש1")').length > 0) {
    $(".product-grid .item-box").addClass("newprod");
}

}); 
4

3 に答える 3

0

特定のアイテム ボックスをターゲットにする必要があります。共有した例では、それらすべてをターゲットにしています。これを試して:

$(document).ready(function () {

  $('div.description:contains("חדש1")').each(function(){
    $(this).closest(".product-grid").find(".item-box").addClass("newprod");
  });

});

推測する必要があったため、次の HTML を想定しています。

<div class="product-grid">
  <div class="item-box">...</div>
  <div class="description">....</div>
</div>

更新: 考えてみると、HTML はおそらく次のようになります。

<div class="product-grid">
  <div class="item-box">
      <div class="description">....</div>
  </div>
</div>

その場合は、次のコードを使用します。

$(document).ready(function () {

  $('div.description:contains("חדש1")').each(function(){
    $(this).closest(".item-box").addClass("newprod");
  });

});
于 2012-05-13T18:15:10.677 に答える
0

あなたの質問はあまり明確ではありませんが、これが役立つと思います。

if ($(' div.description').hasClass('חדש')) {
    $(".product-grid .item-box").addClass("newprod");
}
于 2012-05-13T18:15:39.833 に答える
0
$(' div.description:contains("חדש1")').each(function() {
    $(this).parent().find(".item-box").addClass("newprod");
});
于 2012-05-13T18:18:22.933 に答える