0

我有img的html标签

<img id="photo" src="//lh5.googleusercontent.com/-nt2iZrVQYZE/AAAAAAAAAAI/AAAAAAAAAEQ/z6WGWyexYpM/s512-c/photo.jpg">

将 s512-c 更改为 s36-c 我正在使用

<script type="text/javascript">
//<![CDATA[
$(document).ready(function(){
var orgImg = document.getElementById('photo');
orgImg.src = orgImg.src.replace('s512-c', 's36-c');
})();
//]]>
</script>

但这只是将一个 id="photo" 替换为

<img id="photo" src="//lh5.googleusercontent.com/-nt2iZrVQYZE/AAAAAAAAAAI/AAAAAAAAAEQ/z6WGWyexYpM/s36-c/photo.jpg"/>

我想将所有图像链接 s512-c 更改为 s36-c。帮我。

4

3 回答 3

0

遍历所有图像(通过标签名称)而不是通过 id 获取图像。我还要注意每个 DOM 元素 id 应该是唯一的;您不能将相同的 id 分配给多个图像。

<script type="text/javascript">
$(document).ready(function(){
    var images = document.getElementsByTagName('img');
    for (var i = 0; i < images.length; ++i) {
        var orgImg = images[i];
        orgImg.src = orgImg.src.replace('s512-c', 's36-c');
    }
})();
</script>

如果您的页面上的图像多于需要修改的图像,您可能需要为那些需要修改的图像分配一个类,并改用document.getElementsByClassName

于 2013-07-06T14:46:38.770 回答
0

一个页面中不能有多个具有相同 id 的元素。您应该做的是通过标签名称(img)检索您的图像,或者给它们一个类名并使用它检索它们。由于您使用的是 jquery,这里有一个 jquery 的解决方案:http: //jsfiddle.net/DVS67/

$(document).ready(function() {
    $("img").each(function(index, elem) {
        $(elem).attr("src", $(elem).attr("src").replace('s512-c', 's36-c'));
    });
});

如果您决定使用类名,只需将 de 选择器替换$("img")$(".yourclassname")

于 2013-07-06T14:55:19.400 回答
-2

您应该为每个 img 使用不同的 id。您还可以为所有要更改的 img 添加一个类,然后使用 jquery 更改它们

于 2013-07-06T14:46:53.963 回答