问题
I have this jQuery:
$(this).parent().parent().find(".license_tooltip").stop(true, true).fadeIn(200);
The $(this)
object is nested within two div
s 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.
回答1:
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);
回答2:
You could use the .parents( [ selector ] )
here is a link
It will traverse more than one parent up.
回答3:
use parents()
$(this)
.parents('selector for the parent you need to look in')
.find(".license_tooltip")
.stop(true, true)
.fadeIn(200);
来源:https://stackoverflow.com/questions/4402639/jquery-multiple-parent-calls