I'd like to find the closest link with attribute findme
from a children .startpoint
.
Structure:
<ul>
<li><a href="#">Point one</a></li>
<li><a href="#" data-findme="yipi">Point one</a>
<ul>
<li><a href="#">Hello</a></li>
<li><a href="#">Hello</a>
<ul>
<li><a href="#" class="startpoint">My Startpoint</a></li>
</ul>
</li>
</ul>
</li>
</ul>
JavaScript (jQuery):
$(document).ready(function(){
console.log(
$('.startpoint').closest("*[data-findme]")
);
});
Since the problem is, that the element data-findme
is not a a parent element instead it is another child of a parent, my example will not find the element.
The example: http://jsfiddle.net/rjhgvxoe/
How can I get it to work?
You would need a selector like this:
$('.startpoint').closest("li:has(*[data-findme])")
That would query for the closest <li>
element which contains an element with the attribute data-findme
. To grab the anchor from there
$('.startpoint').closest("li:has(*[data-findme])").children('[data-findme]')