使用 jQuery 从图像中删除 pagespeed 模块扩展
Strip pagespeed module extension from image with jQuery
我的网站上有这个 jQuery 功能,可以为图像添加 在 Facebook 上分享按钮,效果很好。
问题是,现在我已经在我的服务器上安装了 Google 的 Pagespeed 模块,以加快速度。像魅力一样工作,除了一件事:
图片现在获得 pagespeed 扩展,Facebook 似乎不喜欢它。
所以,我正在寻找的是一个获取图像 src 的函数(这已经存在),剥离添加的 pagespeed 扩展,并发回 "original" 图像 src。
我正在这样获取图像 src:
img = $(this).attr('src');
我没有的是在这个函数之后去掉 pagespeed 扩展的函数。
google pagespeed 图像看起来像这样:
http://my-site.com/wp-content/uploads/700x524ximagename700x524.jpg.pagespeed.ic.9rlwkDUtDK.webp
问题是,有两部分需要去掉:
700x524x 出现在图像名称之前...
...以及文件扩展名 之后的所有内容 (.pagespeed.ic.9rlwkDUtDK.webp)
是否有专家可以建议我解决这个问题?
谢谢!
// 詹斯
您可能想要使用正则表达式来匹配您想要(和不想)保留的字符串部分,然后您可以使用反向引用来提取原始文件名。这里的文件名将在匹配的组中,</code>.</p>
<pre><code>\d*x\d*x(.*)\.pagespeed.*
参见 https://regex101.com/r/jR8fI3/1
中的示例
在javascript中:
var image = "700x524ximagename700x524.jpg.pagespeed.ic.9rlwkDUtDK.webp";
var original = image.replace(/\d*x\d*x(.*)\.pagespeed.*/, "");
alert(original);
中的示例
我的网站上有这个 jQuery 功能,可以为图像添加 在 Facebook 上分享按钮,效果很好。
问题是,现在我已经在我的服务器上安装了 Google 的 Pagespeed 模块,以加快速度。像魅力一样工作,除了一件事:
图片现在获得 pagespeed 扩展,Facebook 似乎不喜欢它。
所以,我正在寻找的是一个获取图像 src 的函数(这已经存在),剥离添加的 pagespeed 扩展,并发回 "original" 图像 src。
我正在这样获取图像 src:
img = $(this).attr('src');
我没有的是在这个函数之后去掉 pagespeed 扩展的函数。
google pagespeed 图像看起来像这样:
http://my-site.com/wp-content/uploads/700x524ximagename700x524.jpg.pagespeed.ic.9rlwkDUtDK.webp
问题是,有两部分需要去掉:
700x524x 出现在图像名称之前...
...以及文件扩展名 之后的所有内容 (.pagespeed.ic.9rlwkDUtDK.webp)
是否有专家可以建议我解决这个问题?
谢谢!
// 詹斯
您可能想要使用正则表达式来匹配您想要(和不想)保留的字符串部分,然后您可以使用反向引用来提取原始文件名。这里的文件名将在匹配的组中,</code>.</p>
<pre><code>\d*x\d*x(.*)\.pagespeed.*
参见 https://regex101.com/r/jR8fI3/1
中的示例在javascript中:
var image = "700x524ximagename700x524.jpg.pagespeed.ic.9rlwkDUtDK.webp";
var original = image.replace(/\d*x\d*x(.*)\.pagespeed.*/, "");
alert(original);
中的示例