jQuery multiple parent() calls

2020-02-06 02:50发布

I have this jQuery:

$(this).parent().parent().find(".license_tooltip").stop(true, true).fadeIn(200);

The $(this) object is nested within two divs like this:

<div>
    <div>
        <a href="">$(this) object</a>
    </div>

    <div>
        <a href="">object to fade in</a>
    </div>
</div>

Can someone point me in the right direction to making my jQuery more streamlined? The structure presented above is replicated multiple times, so using classes and IDs is impossible.

3条回答
祖国的老花朵
2楼-- · 2020-02-06 03:06

You could use the .parents( [ selector ] ) here is a link

It will traverse more than one parent up.

查看更多
做自己的国王
3楼-- · 2020-02-06 03:12

You can use a class (or any other selectable attribute) and .closest() to claim to the parent you want, like this:

<div class="container">
    <div>
        <a href="">$(this) object</a>
    </div>

    <div>
        <a href="">object to fade in</a>
    </div>
</div>

And for the script:

$(this).closest(".container").find(".license_tooltip").stop(true, true).fadeIn(200);
查看更多
聊天终结者
4楼-- · 2020-02-06 03:15

use parents()

$(this)
    .parents('selector for the parent you need to look in')
    .find(".license_tooltip")
    .stop(true, true)
    .fadeIn(200);
查看更多
登录 后发表回答