我确信这很简单,但我无法理解。
我有这个HTML:
<img src="/7290/9200572193_f95fb66c50_m.jpg" />
我需要改为
<img src="/7290/9200572193_f95fb66c50_b.jpg" />
这并不总是相同的图片,但_m.jpg
和_b.jpg
是。我怎么能用jQuery做到这一点?
答案 0 :(得分:2)
你可以这样做:
var imgSrc = "/7290/9200572193_f95fb66c50_m.jpg";
imgSrc = imgSrc.replace("_m.jpg", "_b.jpg");
答案 1 :(得分:1)
这样的事可能会对你有所帮助:
$( "img" ).each(function() {
var src = $( this ).attr( "src" );
$( this ).attr( "src", src.replace( /_m\.(.*)$/, "_b.$1" ) );
});
这不取决于src
属性的扩展名。
答案 2 :(得分:1)
使用$("img").each(function(){ doStuff(); });
循环显示“img”标签。使用attr("attribute","new_value")
更改属性,使用attr("attribute")
获取属性。替换为replace("from","to")
。
$("img").each(function(){
$(this).attr("src",$(this).attr("src").replace("_m","_b"));
});
答案 3 :(得分:0)
简而言之,请使用.replace
。如:
"/7290/9200572193_f95fb66c50_m.jpg".replace('_m.jpg', '_b.jpg');
/* OR */
var url = "/7290/9200572193_f95fb66c50_m.jpg";
url.replace('_m.jpg', '_b.jpg');
您在.each()
中使用jQuery来循环遍历一组元素。因此,您可以使用像$('img')
这样的简单选择器来选择视图上的所有图像,然后在callback
方法中进行更改。然后,您可以使用.prop
设置并获取当前src
并使用旧式.replace
$("img").each(function(i) {
$(this).prop("src", $(this).prop("src").replace('_m.jpg', '_b.jpg'));
});