从图像源中删除最后一个字符

时间:2015-07-09 09:22:46

标签: jquery wordpress image resolution src

我正在构建一个包含大量重图像的Wordpress网站。 通过加载wordpress生成的图像的“大”版本,我想我可以最小化页面加载而不是获得它们的完整大小。但是在台式机上我希望加载全尺寸图像而不是“大尺寸”图像。

如果在桌面上加载页面,我使用以下代码更改图像源:

$('img').each(function() {
    var src = $(this).attr('src');
    $(this).attr('src', src.replace(/-1024x682(\.[^.]+)?$/, '$1'));
});

但是由于所有图片的“大”分辨率都不是1024x682,我需要另外解决我的问题。是否可以代替替换图像src中的-1024x682,只删除最后9个字符(当然是在文件扩展名之前)?

2 个答案:

答案 0 :(得分:1)

如果您更喜欢正则表达式:

$(this).attr('src', src.replace(/-[0-9x]+(?=\.jpg)$/, ''));

这将允许任何数字/大小分辨率。

答案 1 :(得分:1)

您可以将代码更新为以下内容

var src = $(this).attr('src');
var extension = src.substring(src.lastIndexOf(".")); // gets the extension
var imageName = src.substring(0, src.lastIndexOf(".")); // gets the file name
imageName = imageName.replace(imageName.substring(imageName.length-9), ""); // replace the last 9 characters with empty string
$(this).attr('src', imageName + extension);