如何使用jquery找到锚标记的href路径?

时间:2013-07-09 09:05:35

标签: javascript jquery html jquery-ui

如何使用jquery获取并检查href路径是否包含图像路径或其他链接。 例如:

<a href="image.png"><img src="image.png"/></a>

在上面的示例中,锚文本包含图像src,然后只有jquery函数才能找到href path.ie,仅当锚文本包含href标记时才获取img路径。

我查看了jquery api中的.has来检查图像。但是我如何检查href是否包含图像路径或其他路径。 我将根据SO用户的建议做的事情,比如。

<script type="text/javascript">
                            jQuery(document).ready(function($) {
                                if (jQuery('a').has("img")) {  // it return the no. of img tag within a
                                    jQuery('a').has("img").prop('href', '#');
                                }

                            });
                        </script>

请参阅上面的脚本执行操作以检查锚文本是否包含图像标记,然后仅检查锚标记的href链接。 以同样的方式添加喜欢做上面的脚本来检查href是否包含任何图像路径或链接。如果图像路径包含在href上,那么上面的脚本应该执行,否则它不会。

@Downvoters的任何可能原因。

是否可以在jquery中进行,任何建议都会非常感激。

8 个答案:

答案 0 :(得分:6)

你可以做到

$('a:has(img)').click(function(){
    var href = this.href; //or $(this).attr('href')
    if(/\.(png|gif|jpg|jpeg)$/i.test(href)){
        alert('do')
    }
})

答案 1 :(得分:2)

首先使用href jQuery函数找到attr()

var href = $link.attr('href');

然后你必须使用this question答案中的指示来验证href是否是图像。

答案 2 :(得分:2)

使用attr - documentation here.

示例:

我的链接

console.log($('#myLink').attr("href"));

答案 3 :(得分:2)

var href = $('a').attr('href');

var href = $('a').prop('href');

答案 4 :(得分:2)

首先,您必须选择链接 e.g

<a href="link" id="ourlink" ></a>

然后你可以使用attr方法来获取或设置href

$("#ourlink").attr('href'); // Here you get it
$("#ourlink").attr('href','anotherlink'); //here you set it

答案 5 :(得分:2)

做这样的事情 -

var url = $('a').attr('href');

if(verify url is of type image here){
//true

}
else{
//false

}

答案 6 :(得分:1)

使用正则表达式检查href属性中的字符串:

var patt=/(png|jpg|gif)/g;
if(patt.test($('a').attr('href'))){
//do something if image
} else {
//do something else
}

答案 7 :(得分:1)

您可以测试锚标记的属性,并使用正则表达式检查href具有扩展名为图像文件的文件。

        //Get the value of href attribute of anchor tag
        var anchorHref = $("a:has(img)").attr("href");

        //Check the extention of the file
        if((/\.(gif|jpg|jpeg|tiff|png|bmp)$/i).test(anchorHref))
        {
            alert("It is Image Path"); 
        }