jQuery addClass到所有带类的元素

问题描述 投票:6回答:5

我想... addClass() strike 归类 priceis 如果specialprice 存在。目前,它只把它放在 第一 元素,而不是在 每一 元素,出现在页面上。我需要它检查 元素的类 specialprice.

<font class="pricecolor colors_productprice specialprice">
    <span class="PageText_L483n">
        <font class="text colors_text"><b>Regular Price:<br> </b></font>
        <span class="priceis">$2,492<sup>.38</sup></span>
    </span>
</font>

<script>
    $('.specialprice').find('.priceis').addClass('strike');
</script>
jquery find each
5个回答
6
投票

你的HTML是错误的

<span id="priceis">

你可能是指设置 class 而不是 id.

<span class="priceis">

如果你修改了你的HTML,你现在的代码就可以用了。

你可以 想看这个答案它解释了为什么在DOM元素之前加入脚本时不能工作。


9
投票

$('.specialprice.priceis').addClass('strike'); ?


9
投票

还是不知道你问题的解释,不清楚。

$(function() {
  $('.specialprice').each(function() {
    $(this).find('.priceis').addClass('strike');
  });
}

EDIT:刚刚意识到也许你想这样做?

$('.specialprice').each(function() {
  $(this).find('*').addClass('strike');
});

1
投票
$('.priceis').each(function(i, item) {

    var $item = $(item);

    if( $item.hasClass('specialprice') || $item.parents('.specialprice') )
    {
        $item.addClass('strike');
    }

});

0
投票

试试这个。

$('.specialprice').has('.priceis').addClass('strike');
© www.soinside.com 2019 - 2024. All rights reserved.