我有一个地狱CMS工作,我想知道我是否可以使用jQuery(或直接JS)执行以下操作
图像显示时没有ID或类,我想根据src值替换图像
伪代码就像......
找到img where src = /img/00789-reg-1.jpg'; 并用='img / much-better-img.jpg';
替换src值谢谢 -
答案 0 :(得分:5)
每个图像都是document.images
提供的数组的一部分。您可以循环浏览图像以查找具有所需源的图像。
var index=0;
while(document.images[index]){
alert(document.images[index].src);
index++;
}
答案 1 :(得分:3)
是的,你可以:
jQuery('img[src=/img/00789-reg-1.jpg]').attr('src','img/much-better-img.jpg');
答案 2 :(得分:3)
你可以使用:
var images = document.images;
var iLength = images.length;
for (var i=0; i<iLength; i++){
thisImage = images[i];
if (thisImage.src == "theOneThatIWantToReplace"){
thisImage.src = "myNewSrc"
break;
}
}
如果你不需要它,至少这不涉及启动JQuery。
答案 3 :(得分:0)
您可以使用Attribute Starts With Selector查找图片,然后执行替换:
$("img[src^='/img']").each(function(){
$(this).attr("src", "new image");
});
答案 4 :(得分:0)
var replace = {
"/img/00789-reg-1.jpg": "img/much-better-img.jpg",
"/img/another.jpg": "img/another-img.jpg"
}
for (var src in replace){
$("img[src="+src+"]").attr("src", replace[src]);
}
答案 5 :(得分:-1)
您可以获取所有图像,然后查看其来源
$('img').foreach(function(o){
if (o.attr('src')=='oldfile')
o.attr('src', 'newfile');
});
这很长,但我不知道其他方式。