【问题标题】:finding number of children using size() in jquery在 jquery 中使用 size() 查找孩子的数量
【发布时间】:2009-02-11 11:55:27
【问题描述】:

我有一个 jquery 菜单,其中包含太多条目,以至于超出了页面的长度。我想获取每个菜单部分中的条目数,以便可以使用它来调整页面末尾的填充 div 的大小。

$('.hideMe').click(function(){ 
    alert( $(this).next('ul').children() );
}); 

所以我想找出ul标签下的li标签个数。

<h3 class="hideMe">Items</h3>
    <ul class="myul">
        <li id="001" >
            <a href="products.php?item=001">Item 1</a>
        </li>
        <li id="002" >
            <a href="products.php?item=002">Item 2</a>
        </li>   
        <li id="003" >
        <a href="products.php?item=003">Item 3</a>
        </li>   

有什么想法吗?谢谢。

【问题讨论】:

    标签: jquery syntax


    【解决方案1】:

    这个呢:

    $(this).next('ul').find('li').length
    

    ?

    【讨论】:

      【解决方案2】:
      $(".hideMe").click(function(){ 
          alert( $(this).next("ul").find("li").length);
      });
      

      但我宁愿 $(this).next("ul").height() 立即获得高度。

      【讨论】:

      • 嗯。使用高度似乎是最好的方法,但是当菜单关闭时会发生这种高度检查,它会返回 1。当我再次单击它时,它会给出正确的高度,因为然后菜单会被扩展。
      • 为什么不先得到高度再关闭呢?
      【解决方案3】:

      我同意 Staicu 提供的答案(并且我已经投了赞成票),但是您需要考虑孩子的数量是否足以满足您的需求。

      不要忘记允许不同的显示器分辨率以及浏览器窗口的大小(更具体地说是您的情况 - 高度)可以更改的事实。

      我不完全确定“填充 div”在整体布局中扮演什么角色 - 也许更详细的示例可以帮助我们理解。

      【讨论】:

      • 就在页面页脚之前我有一个 div:
        然后调整这个 div 的高度以使页面更长并适合 v.long菜单
      猜你喜欢
      • 2015-11-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-21
      • 2015-10-15
      相关资源
      最近更新 更多