美文网首页
计算同行等高方法

计算同行等高方法

作者: leleo | 来源:发表于2019-08-21 23:30 被阅读0次
window.Base = window.Base || function () {};

// 计算同行等高方法
//  如果层级只有两级,传2个参数,如果层级有三级,传3个参数,
Base.prototype.setHeight = function (obj, obj2, obj3) {
  if (!this.resizeStackLock) {
    this.resizeStack.push({
      fn: this.v3SetHeight,
      params: arguments
    });
  }
  var This = $(obj);
  var args = arguments;
  This.each(function () {
    var _this = $(this),
      oList = _this.find(obj2),
      oList_len = oList.length,
      oBox_w = _this.width() + 10,
      oList_w = oList.width(),
      oColumn_len = Math.floor(oBox_w / oList_w),
      oRow_len = Math.ceil(oList_len / oColumn_len),
      oList_H = 0,
      oList_obj = null;
    if (args.length == 2) {
      oList.height('auto');
    } else {
      oList.find(obj3).height('auto');
    }
    for (var i = 0; i < oRow_len; i++) {
      for (var j = i * oColumn_len; j < oColumn_len * (i + 1); j++) {
        oList.eq(j).addClass('oList_obj');
        if (args.length == 2) {
          var H = oList.eq(j).height();
        } else {
          var H = oList.eq(j).find(obj3).height();
        }
        H > oList_H ? oList_H = H : oList_H;
        oList_obj = $('.oList_obj');
      }
      if (args.length == 2) {
        oList_obj.height(oList_H);
      } else {
        oList_obj.find(obj3).height(oList_H);
      }
      oList_obj.removeClass('oList_obj');
      oList_H = 0;
    }
  });
}

var baseLib = new Base();
baseLib.setHeight() ////5种尺寸图片的图片替换

相关文章

网友评论

      本文标题:计算同行等高方法

      本文链接:https://www.haomeiwen.com/subject/zpcmsctx.html