-1
 <div>
     <a id="_a-link" href=""><img src="/local/img/image1.png" alt=""/></a>
 </div>

对于该图像链接,我尝试使用以下 jquery 代码将其图像源属性更改为

 <div>
     <a id="_a-link" href=""><img src="/local/img/image2.png" alt=""/></a>
 </div>


$('#_a-link img').attr('src','');
$('#_a-link img').attr('src','/local/img/image2.png');

但是显示的图像毕竟还是一样的;它是 image1.png 不是 image2.png;

4

3 回答 3

6

你有一个错字:

$('#_a-link img').attr('src','');
$('#_a-link img').attr({'src':'/local/img/image2.png', 'alt': ''});

你也做错了选择器。AFAIK,“#ID TAGNAME”选择器工作时间很长。他们将获得所有的 img,然后将每个人上楼 DOM 以找到一些具有 ID 的节点。您最好为所需的图像添加一些类,或者如果它预计是一次性使用的图像 id。

所以最好的优化方式是:

<a whatever here><img src="#" class="imgClass" /></a>
$(".imgClass");
于 2012-11-15T10:37:12.133 回答
0

Try This:

$('#_a-link img').attr("src").replace("/local/img/image1.png", "/local/img/image2.png");
于 2012-11-15T11:27:08.607 回答
0

您发布的代码使用scr;它应该是src

 <div><a id="_a-link" href=""><img src="/local/img/image2.png" alt=""/></a>
 </div>

$('#_a-link img').attr('src','/local/img/image2.png');

您不需要先将其清空,并且alt应该是单独的调用(如果您也需要更改它)。

编辑(基于以下评论):

这是一个使用此代码的 jsFiddle:http: //jsfiddle.net/h4tf6/

如您所见,它工作得很好。如果您遇到问题,则代码中的其他地方很可能存在错误。

于 2012-11-15T10:38:12.647 回答