jQuery:如何通过src查找图像

时间:2009-05-07 15:36:23

标签: jquery

我需要通过名字和src找到一个img。我一直在尝试以下方面无济于事。

var s = $("img[src='/images/greendot.gif'][name='BS']");

html:

<img alt="This item is active." name="BS" src="/images/greendot.gif"/>

VS

<img alt="This item is not active." name="BS" src="/images/spacer.gif"/>

4 个答案:

答案 0 :(得分:83)

没有看到html我会说检查你的路径。

$("img[src$='greendot.gif'][name='BS']")

给出以下HTML:

<img src="http://assets0.twitter.com/images/twitter_logo_header.png" name="logo" />

这个jquery有效:

var x = $("img[src$='twitter_logo_header.png'][name='logo']");
alert(x.attr("src"));

答案 1 :(得分:6)

尝试丢失报价:

var s = $("img[src=../../images/greendot.gif][name=BS]");

答案 2 :(得分:4)

浏览器为src,href和类似属性添加完整路径。因此,即使元素是用相对路径定义的,在DOM的'src'属性中也包含域名和完整路径。使用[src $ =“...”]语法或指定完整域名似乎只是使用jQuery通过src查找图像的选项。


我可能在这里错了。 image对象的src属性报告完整路径,但该属性应包含代码中指定的路径。 [src =“relative / path”]适用于最新的jQuery版本,也许是早期版本,它不起作用。

答案 3 :(得分:0)

像这样更改你的img标签:

<img src="path/to/imgage/img.jpg" title="img.jpg" />

我的意思是添加到您的图片标题属性并设置它们的文件名称。

当您需要访问某些图像时,您可以按照以下方式进行操作:

//Finding image that you need using 'title' attribute; 
var imageTag = $("img[title='imageName']");

//Then if you need to do something with it;
imageTag.attr('src', 'path/to/newImage/newImage.jgp');
imageTag.attr('title', 'newImage.jpg');