我拥有的html结构类似于:
<ul id="something">
<li>
<a href="">
<img src="http://domain.com/directory/file1-128x79.jpg">
</a>
</li>
<li>
<a href="">
<img src="http://domain.com/directory/file2-128x79.jpg">
</a>
</li>
<li>
<a href="">
<img src="http://domain.com/directory/file3-128x79.jpg">
</a>
</li>
</ul>
我正在尝试将文件名从文件#-128x79.jpg 更改为文件#-896x277.jpg 。
我不知道如何获取动态生成的文件名并搜索和替换src更改。
我找到了用'none'取代整个src的方法,以确保我到目前为止做到了,但我不知道如何做其余的。
$('#something').removeAttr('id').prop('class', 'some-class').find('img').prop('src', 'none');
答案 0 :(得分:17)
您可以先为每个src
替换img
,方法是首先使用选择器选择所有图像,然后使用attr
回调replace
内容:
$('#something img').attr('src',function(i,e){
return e.replace("-128x79.jpg","-896x277.jpg");
})
答案 1 :(得分:6)
您可以为图片标记指定ID,例如
<img id ="pic" src="http://domain.com/directory/file3-128x79.jpg">
然后在jquery中使用
$('#pic').attr('src', 'file#-896x277.jpg');
答案 2 :(得分:3)
$('img').hover(function(){ // or any other method
this.src = this.src.replace("128x79", "200x60");
});
答案 3 :(得分:1)
您应该在.children()
之前添加.find('img')
:
$('#something').removeAttr('id').attr('class', 'some-class').children().find('img').attr('src', 'none');
答案 4 :(得分:1)
注意:请尝试以下鼠标,仅用于演示目的
$(function() {
$("something li a img")
.mouseover(function() {
var src = "over.gif";
$(this).attr("src", src); // change the image source
})
});
答案 5 :(得分:0)
如何使用attr:
this.removeAttr('id').prop('class', 'featured-images').find('img').attr({‘src’:'file#-896x277.jpg’});
答案 6 :(得分:0)
$('#something img').attr('src',$('#something img').attr('src').replace(x,y))