我知道这是一个非常基本的问题,请原谅我,但我似乎无法为我的生活做好准备。
我正在使用JQuery从一个图像src获取url并将其加载到我工作正常的另一个图像src中。但是我需要用800x600这样的东西替换网址的100x75部分,以便拉出更大的图像。
我该怎么做?
这是一个例子: 假设我用jquery抓取图像源URL,它看起来像这样:http://example.com/images/Something_cool-100x75.png 我需要它看起来像这样:http://example.com/images/Something_cool-800x600.png
jQuery(document).ready(function($) {
// this will pull the image I need
var get_image = $('img.attachment-shop_thumbnail').attr('src');
//this will assign the image I pulled above to where I need it to go but I need to replace the 100x75 in the filename to 800x600
$("#sale_img").attr("src", get_image);
});
因此,如果您提供答案,您可以告诉我它是如何工作的,因为我还需要在其中一些上更改.png到.jpg ..只是不确定那是怎么回事
答案 0 :(得分:2)
您可以使用regexp:
string.replace(/\d+x\d+/, '800x800')
基本上,它会找到一个数字(\d
)1或更多时间(+
)后跟一个“x”并找到一个或多个时间的其他数字。
根据你所说的价值改变它。
对于.jpg,您仍然可以使用正则表达式:string.replace(/\.png$/, '.jpg')
答案 1 :(得分:1)
简单的javascript替换可以完成你的工作
var get_image = $('img.attachment-shop_thumbnail').attr('src');
get_image = get_image.replace("100x75","800x600");
以同样的方式使用它将.png替换为.jpg。所以它来了
var get_image = $('img.attachment-shop_thumbnail').attr('src').replace("100x75","800x600")..replace(".png",".jpg");
答案 2 :(得分:1)
试试这个
var get_image = $('img.attachment-shop_thumbnail').attr('src').replace('100x75', '800x600');
答案 3 :(得分:0)
我认为更好的实现方法是为每个图像分别设置一个css类(除非它们有很多)。您可以简单地更改类。而不是担心图像源的字符串操作。