get href attribute of enclosing link tag

安稳与你 提交于 2019-12-18 05:12:26

问题


Having a little trouble on this one. I need a way using Jquery/JS to find the HREF attribute of the enclosing link tag:

<a href="something.html"><img src="img1.jpg" class="active"></a>

I want to target the img by class and find the value of the 1st preceding href attribute.

$("img.active").somethingAwesome().attr("href");

Please show me somethingAwesome() ...help?


回答1:


$("img.active").parent("a").attr("href") will get the direct parent's href attribute, assuming it's an anchor. If there's any depth of containing blocks between the image and the anchor, use instead $("img.active").closest("a").attr("href").




回答2:


.parent() is all you need!

$("img.active").parent().attr("href");

Here is the documentation :)

As per Kyle's comment, and in an attempt to make something as robust as possible, you could try:

$("img.active").closest('a[href]').attr("href");

that way, even if your html looks like this:

<a href="something.html">
    <a name="anchor">
        <img src="img1.jpg" class="active">
    </a>
</a>

you'll still get what you need :)




回答3:


$("img.active").closest("a").attr("href");




回答4:


$("img.active").closest('a').attr("href");


来源:https://stackoverflow.com/questions/5202619/get-href-attribute-of-enclosing-link-tag

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!