我有这个小画廊(代码只是示例):
<div id="gallery_imgs">
<img src="http://fc01.deviantart.net/fs71/f/2014/112/0/9/nobody_believes_in_me_by_idjpanda-d7fkd7m.png" />
<img src="http://fc09.deviantart.net/fs71/f/2014/112/5/6/feed_me_d__by_idjpanda-d7fgids.png" />
<img src="http://fc02.deviantart.net/fs71/f/2014/104/e/5/blar_auction_by_idjpanda-d7ehmoc.png" />
</div>
<p></p>
JS代码:
var that = $("#gallery_imgs img:eq(1)");
$("p").html($("#gallery_imgs img").find("[src='"+that.attr("src")+"']").length);
这会返回 0。知道为什么吗?这是一个错误,还是我做错了什么?
最佳答案
你需要.filter()
$("p").html($("#gallery_imgs img").filter("[src='"+that.attr("src")+"']").length);
你可以使用.find()这样
$("p").html($("#gallery_imgs").find("img [src='"+that.attr("src")+"']").length);
问题
$("#gallery_imgs img").find("[src='"+that.attr("src")+"']")
您正在尝试查找元素src
在 img
元素内而不在 img
元素内
关于javascript - jquery 通过 src 属性查找元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23250033/