【发布时间】:2015-03-24 09:59:52
【问题描述】:
在得到了 @michael-p 的帮助后,他制作了一个出色的脚本, 我正在寻找一些可以在我的新情况下更好地工作的代码(old topic link)。
“容器”类或 id(如下所示)显示从上到下移动的 flexbox 内容(“框”),当到达底部时,会在右侧重新显示另一行。
这是一个问题,因为正如我在旧主题中所解释的那样,Chrome 无法识别 flexbox 内容并且不会拉伸宽度。
Michael P 通过一些脚本解决了这个问题,但是脚本是为一个“容器”类制作的(当多个 div 具有相同的类名时,它会吓坏,因为它们里面有不同数量的“盒子”类,所以宽度不同)。
我想要达到的目标:
一个脚本(可以从 Michael-P 脚本修改)只关注其放置的 div,并在 div 停止时停止,因此无需按名称指定某个类。
这样做不会限制有多少个 div 副本具有相同的类名但其中的“框”内容数量不同。
Fiddle from Michael P
<div id="container">
<div class="box">1</div>
<div class="box">2</div>
<div class="box">3</div>
<div class="box">4</div>
<div class="box">5</div>
<div class="box">6</div>
<div class="box">7</div>
<div class="box">8</div>
<div class="box">9</div>
<div class="box">10</div>
<div class="box">11</div>
<div class="box">12</div>
<div class="box">13</div>
maybe here the script? that stops when </div> is shown?
</div>
脚本
// Find the biggest offset right
var maxOffsetRight = 0,
currentOffsetRight;
$('#container').children().each(function(index) {
currentOffsetRight = $(this).position().left + $(this).outerWidth(true);
if (currentOffsetRight > maxOffsetRight) {
maxOffsetRight = currentOffsetRight;
}
});
$('#container').css('width', maxOffsetRight);
【问题讨论】:
-
你想用这些盒子实现什么?这几乎需要一个更简单的解决方案。
-
我想在里面放图片或文字,如果你有更简单的解决方案,我总是愿意的。
标签: javascript jquery html css flexbox