Jquery检查元素是否存在然后将类添加到不同的元素

时间:2010-04-29 04:23:21

标签: javascript jquery

我对jquery一点都不太了解,所以忍受我的无知,但我很确定我可以用jquery完成这个。

我需要jquery来检查元素是否存在,如果存在,则将类添加到其他元素。例如,

如果存在“minimal-price-link”类,则将类添加到“常规价格”或者我真正想要做的是使常规价格删除。

以下是代码:

<div class="price-box">
   <span class="regular-price" id="product-price-2">
       <span class="price">$240.00</span>
   </span>               

   <a href="http://stemulation.com/order/sfs30.html" class="minimal-price-link">
       <span class="label">Your Price:</span>
       <span class="price" id="product-minimal-price-2">$110.00</span>
   </a>
</div>

3 个答案:

答案 0 :(得分:3)

这应该这样做......

$(function() {

  $("a.minimal-price-link").each(function(){

    // it would be easy to wrap it with strike
    $(this).closest('.price-box').find("span.regular-price").wrap("<s>");

    // or you can also add a class
    // $(this).closest('.price-box').find("span.regular-price").addClass("strike");
  })

});​

demo

答案 1 :(得分:2)

if($('.minimal-price-link').length != 0)
{
  $('.regular-price').addClass('strikethrough');
}

如果任何元素具有minimal-price-link类,则将删除线类添加到具有regular-price类的所有元素。这可能不是你想要的,但它应该给你这个想法。

答案 2 :(得分:1)

if ($("a.minimal-price-link").length > 0)
{
    $("span.regular-price").addClass("yourclass");
}

<style type="text/css">
    .yourclass { text-decoration: line-through; }
</style>