jquery - 当列表项超过 UL 高度时,按高度划分列表项

标签 jquery html css

我正在尝试从动态内容创建幻灯片。基本上我想做的是假设我有一个 <ul>这是 300x100。我 float 列表项,当列表项超过 <ul> 的高度时.我想将这些列表项包装在一个 div 中,以便我可以将 x 个列表项除以高度。

我正在尝试这样的事情,但我不知道我是否朝着正确的方向前进或从这里去哪里。

CSS:

<style>
    ul {
        height: 100px;
        width: 300px;
    }

    ul li {
        float: left;
    }
</style

HTML:

    <ul>
        <li>first</li>
        <li>ffgggfs</li>
        <li>sffsfsf</li>
        <li>jgjghjgfj</li>
        <li>trtretert</li>
        <li>ghhfhfhgf</li>
        <li>sdfsdfsdf</li>
        <li>fghjjh</li>
        <li>iuyuiy</li>
        <li>cvcvc</li>
        <li>hgjhjg</li>
        <li>tryryre</li>
        <li>kkhjkhjk</li>
        <li>sdfsdfsdf</li>
        <li>khjkhjk</li>
        <li>adfsfafsaf</li>
        <li>syuuyuyu</li>
        <li>sweeerre</li>
        <li>last</li>
    </ul>

jQuery:

<script>
var sumHeight = 0;


$('ul li').filter(function() {

    var $this = $(this),
        pHeight = $this.parent().height();      // parent inner height

    sumHeight += $this.outerHeight(true);       // + block outer height

    return sumHeight < pHeight;
}).insertAfter('ul').wrapAll('<div></div>');

最佳答案

好吧,我没有给你确切的要求,但可以根据你的需要进行修改。

在此FIDDLE我使用 div 而不是 ul/li,我认为它们可以按照您想要的任何方式设置样式。

有一个 holder div,其中为每个单独的 div 添加了 holder。 通过更改 maxheight,您可以控制每张“幻灯片”中的行数。

var maxheight = 100;
var divlistnum = 0;

$('.holder').append("<div class='" + "slidelist" + divlistnum + "'></div>");

$('#clickme').click(function(){
    $(".slidelist" + divlistnum ).append("<div class='littlelist'>Stuff to Add</div>");

    if( $(".slidelist" + divlistnum).height() > maxheight )
      {
       divlistnum = divlistnum + 1;
       $('.holder').append("<div class='" + "slidelist" + divlistnum + "'></div>");  
       }
});

关于jquery - 当列表项超过 UL 高度时,按高度划分列表项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22016373/

相关文章:

jquery - 从 elements 属性中替换 img src

当从选项列表中选择多个复选框时,复选框的 JavaScript 验证

php - Symfony Twig 样式表

css - Angular:根据用户加载 scss

css - 我如何找到影响此 div 宽度的因素? CSS

javascript - 对数组中的项目求和

javascript - 自动更改可点击幻灯片顶部的 div 的文本颜色

javascript - 单击按钮添加 php include

html - SVG:tspan 元素组中最后一个 tspan 的文本缩进/空格问题

jquery - 单击屏幕上的任意位置即可删除类(class)