jquery - 从具有相同类别的图像中获取不同的高度和宽度并将其应用于它们的 sibling

标签 jquery css

我的图片数量基本上是无限的。每个图像的尺寸都不同(并且随着视口(viewport)大小的变化也会通过百分比动态变化),我需要每个图像的同级图像来匹配这些尺寸。

我已经让 JQuery 在控制台中打印每个图像的宽度,但我不确定如何将它应用到图像的同级 div。此外,如果有某种方法可以监视视口(viewport)大小的变化,以确保同级 div 始终具有与图像相同的尺寸,即使在调整窗口大小时也是如此。

HTML:

<a class="shop-item">

  <img class="thumbnail"/>

  <div class="product-information">
  </div>

</a>

  <a class="shop-item">

  <img class="thumbnail"/>

  <div class="product-information">
  </div>

</a>

JQuery:

$(window).load(function() {
  $(".thumbnail").each(function() {
    var imgwidth = $(this).outerWidth();
    $(this).closest('.product-information').css('width', 'imgwidth');

    console.log(imgwidth)
  });
});

代码笔: http://codepen.io/jonp/pen/yOrvwJ

提前致谢!

最佳答案

除了评论中提到的问题,你需要另一个选择器/方法,

所以,使用 next(),而不是 closest():

$(window).load(function() {
  $(".thumbnail").each(function() {
    var imgwidth = $(this).outerWidth();
    $(this).next('.product-information').css('width', imgwidth+'px');

    console.log(imgwidth)
  });
});

演示:http://codepen.io/anon/pen/BKEYXX

关于jquery - 从具有相同类别的图像中获取不同的高度和宽度并将其应用于它们的 sibling ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37226217/

相关文章:

当应用于数千个元素时,jQuery UI .sortable() 调用速度很慢

jquery - Bootstrap 带时钟选择器(时钟选择器不是一个函数)

html - 背景图像适合选项?

javascript - 三个js Canvas 如何居中?

html - 将 div 的宽度紧密地适应多行跨度

javascript - 如何在不使用像素的情况下使这些标签大小相同?

javascript - 如何在(protip)工具提示内容上注册 'click' 事件?

html - 如何将图标放在段落旁边

php - 在检查元素中显示 0*0 像素的图像

javascript - if 语句中的 JQuery AND OR 运算符