如何隐藏基于另一个现有元素的元素

时间:2016-01-19 14:18:37

标签: javascript jquery html css

我有一个jQuery代码,用于查找特定的div元素。

如果元素存在,我定义一个变量并使用parseFloat()函数。由于我将创建一个数组,因此将有多个具有相同类的元素。

到目前为止,我已设法隐藏名为div.ifc-balance-div的元素;但是我不太确定如何我可以隐藏div.ribbon-yellow,以防元素没有变量savePrice

(function($) {
  "use strict";

  $(document).ready(function() {
    var j = 0,
        savePrices = jQuery('.special-price .price .price').map(function() {
            return parseFloat(jQuery(this).text().replace(/[^0-9\.]+/g, ""), 10);
        }).get();

    if(j < savePrices.length){
        ++j;
    }

    for (var i = 0; i < savePrices.length; ++i) {
      if (Number(savePrices[i]) > 0) {
        var ifcBalance = Number(savePrices[i]) / 1,
            m = parseFloat(ifcBalance).toFixed(0);

        $('div.ifc-balance-div' + (i + 1)).html('<p class="dynamic-badge-txt"><b>£' + m + ' OFF</b></p>');
        $('div.ribbon-yellow').html('<div class="badge-ends-message">ENDS TUESDAY</div>');
      } 
      else {
        $('div.ifc-balance-div' + (i + 1)).hide();
      }
    }
  });
})(jQuery);

以下是HTML代码示例:

  1. 保存价格:

                                                                       文本

            
        <div class="price-box">
            <p class="old-price">
            <span class="price-label">Was</span>
            <span class="price" id="old-price-15510">
                                <span class="price"><span class="currency">£</span>599</span>            </span>
        </p>
    
        <p class="special-price">
            <span class="price-label">You Save</span>
            <span class="price" id="price-excluding-tax-15510">
                <span class="price"><span class="currency">£</span>300</span>            </span>
        </p>
    </div>
    
                从         £299     
  2. 一个没有保存的价格:

                 

    <div class="ribbon-yellow"></div>
    <div>
    </div></div></div>
            <a href="#" title="#">
                <img src="#" alt="#">
            </a>
        </div>
        <div class="item__detail">
            <a href="#" title="#" class="item__link">
                <p class="product-name item__name">Text</p>
            </a>
    
    <div class="price-range">
                <span class="price-label">From </span>
            <span class="price"><span class="price"><span class="currency">£</span>299</span></span>
    </div>
        </div>
    </div>
    

0 个答案:

没有答案