首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >列出父母/子女

列出父母/子女
EN

Stack Overflow用户
提问于 2011-07-02 06:22:50
回答 3查看 570关注 0票数 0

我是jQuery新手。我喜欢使用jQuery,并试图在这方面做得更好。

我有以下菜单:

主页:没有孩子

代码语言:javascript
复制
<ul class="menu">
<li>Team 1 Photos</li>
<li>Team 2 Photos</li>
<li>Group Activities</li>
</ul>

子页面有子

代码语言:javascript
复制
<ul class="menu">
<li>Team 1 Photos</li>
<li>Team 2 Photos</li>
<li>Group Activities
    <ul class="children">
    <li>Team 1 News</li>
    <li>Team 2 News</li>
</ul>
</li>
</ul>

我的CSS是:

代码语言:javascript
复制
ul.children {
    width: auto;
    margin-left: 0;
}
ul.children li{
    border-bottom:1px solid #999;
    margin-bottom: 10px;
   padding-bottom: 3px;
}
ul.children li:last-child{
    border-bottom:1px solid #999 !important;
}
ul.menu {
    width: auto;
    margin-left: 0;
}
ul.menu li{
    border-bottom:1px solid #999;
    margin-bottom: 10px;
   padding-bottom: 3px;
}
ul.menu li:last-child{
    border-bottom:none;
}

我正在努力实现;如果没有孩子的话,最后一个有边框的<li>。上一个没有边框的<li> (如果有子的话)。

我希望我说得通

我已经尝试直接应用边框是/否,或者添加一个类,这样我就可以应用样式:

代码语言:javascript
复制
jQuery('#menu ul li:has(ul)').parent('li').prev()).css('border','1px solid #000');

代码语言:javascript
复制
if (jQuery('.menu li:has(ul)') ) {
  ('ul.menu li:last-child').add Class('borderme');

代码语言:javascript
复制
jQuery('.menu li:has(ul)').append('borderyes');

现在我被困住了,所以请把我引向正确的方向,这样我才能学会如何实现这一点。

谢谢

LRL

EN

Stack Overflow用户

发布于 2011-07-02 06:53:52

这里有一个解决方案:

代码语言:javascript
复制
ul.children {
        width: auto;
        margin-left: 0;
    }
    ul.children li{
        border-bottom:1px solid #999;
        margin-bottom: 10px;
       padding-bottom: 3px;
    }
    /* Remove this css rule
    ul.children li:last-child{
        border-bottom:1px solid #999 !important;
    }
    */
    ul.menu {
        width: auto;
        margin-left: 0;
    }
    ul.menu li{
        border-bottom:1px solid #999;
        margin-bottom: 10px;
       padding-bottom: 3px;
    }
    /* Remove this css rule
    ul.menu li:last-child{
        border-bottom:none;
    }*/

并且,有以下jquery:

代码语言:javascript
复制
$(document).ready(function(){
    $("ul.menu li:last-child:has(ul)").css("border-bottom", "none");
});

只有当li有一个子节点时,我们才会移除边框。

希望这能有所帮助。干杯,希望这有帮助,干杯。

票数 0
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6555443

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档