【问题标题】:Find third parent jQuery查找第三个父 jQuery
【发布时间】:2014-01-17 12:41:22
【问题描述】:

此代码有效,但三重 .parent() 感觉油腻,我想知道是否有更有效的方法来做到这一点

注意

HTML 在页面上重复多次,因此我必须使用类和 (this) 才能仅对所选项目进行动画处理

jquery

$('.view').click(function() {
    $(this).parent().parent().parent().find('.innerContain').animate({ left: '-100%' }, 500); 
});

HTML

<div class="mask">
    <div class="innerContain">
        <!-- Update -->
        <ul class="updateCSI">
            <span class="view">View</span>
        </ul>
        <!-- View -->
        <ul class="viewCSI">
            <span class="update">Update</span>
        </ul>
    </div>
</div>

【问题讨论】:

标签: javascript jquery


【解决方案1】:

我认为$(this).closest('.innerContain') 也会这样做。

Live demo (click).(为了演示,我使用.hide()。)

【讨论】:

  • @user934902 没问题!
【解决方案2】:

为什么不:

$(this).closest('.innerContain');

在这种情况下,closest() 将帮助您在向上遍历 DOM 树时获取具有 .innerContain 类的第一个元素,该元素是 .view 元素的祖先。

【讨论】:

  • 我将 .view 更改为 (this),我明白他在说什么,我只需要最接近了解
猜你喜欢
  • 1970-01-01
  • 2013-05-15
  • 2012-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-19
  • 2019-07-23
  • 2010-12-09
相关资源
最近更新 更多