首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找到最近的元素

找到最近的元素
EN

Stack Overflow用户
提问于 2014-03-28 12:20:25
回答 2查看 112关注 0票数 4

我有这个html:

代码语言:javascript
复制
<div class="row">
    <article>1</article>
    <article>2</article>
    <div class="load-work"></div>
    <article>3</article>
    <article>4</article>
    <div class="load-work"></div>
    <article>5</article>
    <article>6</article>
</div>

我想要做的是找到最近的.load-work来点击article。我目前的JS是:

代码语言:javascript
复制
$('article').each(function() {          $(this).on('click', function() {
        $('.load-work').each(function() {
            $(this).hide().removeClass('loaded-work').html('');
        });
        $(this).closest('.row').find('.load-work').show().addClass('loaded-work')
    })
});

但它不起作用-它找到了每一个。这是小提琴

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-28 12:26:58

您可以用.nextAll():first来尝试这一点。

代码语言:javascript
复制
    $('article').on('click', function () {
         $('.load-work').each(function () {
               $(this).hide().removeClass('loaded-work').html('');
         });
         $(this).nextAll('.load-work:first').show().addClass('loaded-work');
    });

小提琴

或者更好的:

代码语言:javascript
复制
  $('article').on('click', function () {
       $('.load-work').each(function () {
           $(this).hide().removeClass('loaded-work').html('');
       });
       if($(this).nextAll('.load-work:first').length){
           $(this).nextAll('.load-work:first').show().addClass('loaded-work');
       }else{
           $(this).prevAll('.load-work:first').show().addClass('loaded-work');
       }
   });

更新小提琴

票数 4
EN

Stack Overflow用户

发布于 2014-03-28 12:25:21

使用如下

代码语言:javascript
复制
$('article').each(function() {          $(this).on('click', function() {
        $('.load-work').each(function() {
            $(this).hide().removeClass('loaded-work').html('');
        });
        $(this).parent().closest('.row').find('.load-work').first().show().addClass('loaded-work')
    })
});

工作fiddle=> http://jsfiddle.net/naw8W/3/

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

https://stackoverflow.com/questions/22712697

复制
相关文章

相似问题

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