javascript - 是否有 jQuery 选择器来完成此任务?

标签 javascript jquery jquery-traversing

我有这 4 个 HTML 片段:

  • sibling :

    <div class="a">...</div>
    <div class="b">...</div>        <!--selected-->
    <div class="b">...</div>        <!--not selected-->
    
  • 包装 1:

    <div class="a">...</div>
    <div>
        <div class="b">...</div>    <!--selected-->
    </div>
    <div class="b">...</div>        <!--not selected-->
    
  • 包装 2:

    <div>
        <div class="a">...</div>
    </div>
    <div>
        <div class="b">...</div>    <!--selected-->
    </div>
    <div class="b">...</div>        <!--not selected-->
    
  • 分离:

    <div class="a">...</div>
    <div>...</div>
    <div class="b">...</div>        <!--selected-->
    <div>...</div>
    <div class="b">...</div>        <!--not selected-->
    <div>...</div>
    <div class="b">...</div>        <!--not selected-->
    

我如何使用 jQuery 为任何给定的 .a 元素选择下一个 .b 元素,而不考虑嵌套?

我想要这样的东西:

$('.a').each(function() {
    var nearestB = $(this)./*Something epically wonderful here*/;

    //do other stuff here
});

最佳答案

你能试试看它是否适合你的情况吗?

    $(document).ready(function () {
        var isA = false;

        $('div.a, div.b').each(function () {
            if ($(this).attr('class') == "a")
                isA = true;
            if ($(this).attr('class') == "b" && isA) {
                $(this).css("background", "yellow");
                isA = false;
            }
        });
    });

问候...

关于javascript - 是否有 jQuery 选择器来完成此任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3141038/

相关文章:

javascript - 如何将状态与父组件传递给子组件

javascript - iPhone 的 safari 上的视频标签不会触发触摸事件

javascript - jQuery 追加 html 在第一次之后不起作用

javascript - 查找具有特定数据属性的所有元素(无论值如何)

javascript - 滚动条问题 x2

javascript - 检查对象数组中的值是否适合某个范围?

jquery - 单击标签不会选中关联的复选框

javascript - jquery从列表的点击事件中获取某个字段的值

javascript - 如何为每个追加的 div 元素设置 onchange 函数

jquery - prev所有关于隐藏元素