如果图像源包含子字符串,则修改图像源

时间:2015-09-18 23:06:47

标签: javascript jquery css wordpress

我目前正在修改一个恰好是Divi儿童主题的WordPress主题。

我遇到的问题是新产品上的所有图片都被400x400缩略图替换。我已通过Settings->Media禁用缩略图并将所有内容设置为0并取消选中缩略图选项以自动调整大小。

我的问题是,客户上传的数千张图片仍显示为400x400。我想通过jQuery从图像src中删除“-400x400”子字符串来调整这些图像的大小。

以下是我编写的代码;但是,我没有收到任何错误,但它没有纠正我的问题。

是否有人知道我应该如何做到这一点,或者为什么我的代码不会抛出错误但不起作用?

var $imgs = $("img.wp-post-image");
$imgs.each(function () {
    if ($(this).attr("src").indexOf("-400x400") >= 0) {
        var $newsrc = $(this).attr("src").replace("-400x400", "");
        $(this).attr("src", $newsrc);
        $(this).attr("width", "304");
        $(this).attr("height", "400");
    }
});

2 个答案:

答案 0 :(得分:1)

您需要确保在加载 jquery之后加载<{1}}文件

现在,您的custom.js正在尝试在页面上加载 jquery之前执行一些代码

此外,custom.js

中存在拼写错误

它应该(当然)$imgs.each(fucntion () {

除此之外,您的代码正常运行。的 See Fiddle

答案 1 :(得分:0)

如果查看页面的head部分,你会发现在jquery之前加载了custom.js.

<script src="https://broadwayfashionista.com/wp-content/themes/broadway-fashionista/js/custom.js" type="text/javascript"></script>


.........


<script type='text/javascript' src='https://broadwayfashionista.com/wp-includes/js/jquery/jquery.js?ver=1.11.3'></script>

尝试颠倒顺序