使用 jQuery 选择嵌套的 div

Posted

技术标签:

【中文标题】使用 jQuery 选择嵌套的 div【英文标题】:Selecting a nested div with jQuery 【发布时间】:2011-08-09 01:37:25 【问题描述】:

我正在使用生成以下 html 的投票插件:

<div class="pane">
        <ul class="tabs">
            <li><a href="#">Best Local Blog</a></li>
            <li><a href="#"></a></li>
            <li><a href="#"></a></li>
            <li><a href="#"></a></li>
        </ul>

        <div class="pane"></div>
        <div class="pane"></div>
        <div class="pane"></div>
        <div class="pane"></div>
    </div>

    <div class="pane">
        <ul class="tabs">
            <li><a href="#">MISC tab</a></li>
            <li><a href="#"></a></li>
            <li><a href="#"></a></li>
            <li><a href="#"></a></li>
        </ul>

        <div class="pane"></div>
        <div class="pane"></div>
        <div class="pane"></div>
        <div class="pane"></div>
    </div>

这会不断重复(取决于我有多少民意调查)。我只需要一个 jQuery 选择器来选择所有具有 pane 类的 div,它们是 div 类 pane 的子级。 (AKA,我只需要选择类为pane 的嵌套 div)。

谁能帮我用 jquery 选择器来做这个?

【问题讨论】:

【参考方案1】:

或者,您可以这样做:

$('div.pane > div.pane')

【讨论】:

【参考方案2】:

这可以帮助你:

$(".pane").each(function()
    if($(this).children().length > 0)
      //Our parent .pane div
    
);

【讨论】:

【参考方案3】:

尝试:

$('div.pane div.pane')...

【讨论】:

虽然这绝对是一个很棒的解决方案(对于 css),@Justin 的解决方案是一个更好的 jquery 选择器。【参考方案4】:

通过使用 Naveed 的示例,我能够通过以下方式解决我的问题。具体来说,循环遍历元素就可以了:

$( document ).ready(function() 
    $('.rs-gallery-desc').click(function() 
        $("ul.rs-gallery-images-list > li").each(function()
            if($(this).hasClass('active'))
              //console.log($(this).find("a").attr("href"));
              $(this).find('a')[0].click();;
            
        );
    );         
);

【讨论】:

以上是关于使用 jQuery 选择嵌套的 div的主要内容,如果未能解决你的问题,请参考以下文章

使用 jQuery 和 Math.random() 选择嵌套对象属性

使用 jQuery 选择嵌套的 div

使用 jQuery 在嵌套表结构中选择***别的 td

如何使用 JQuery c# 在嵌套网格视图 ASP.net 中使用日期时间选择器

JQuery 在嵌套元素上查找没有选择器的文本节点仅适用于 .contents() 和 filter()

jquery怎么选择嵌套的第一层的li