私は地獄のCMSを使用していて、jQuery(またはJSをまっすぐに)で次のことを実行できるかどうか疑問に思っています
画像はIDまたはクラスなしで表示されており、src値に基づいて画像を置き換えたいのですが
擬似コードは次のようになります...
find img where src = /img/00789-reg-1.jpg'; src値を='img/much-better-img.jpg'に置き換えます。
ありがとう -
私は地獄のCMSを使用していて、jQuery(またはJSをまっすぐに)で次のことを実行できるかどうか疑問に思っています
画像はIDまたはクラスなしで表示されており、src値に基づいて画像を置き換えたいのですが
擬似コードは次のようになります...
find img where src = /img/00789-reg-1.jpg'; src値を='img/much-better-img.jpg'に置き換えます。
ありがとう -
各画像は、 によって提供される配列の一部ですdocument.images
。画像をループして、必要なソースを含む画像を見つけることができます。
var index=0;
while(document.images[index]){
alert(document.images[index].src);
index++;
}
はい、できます:
jQuery('img[src=/img/00789-reg-1.jpg]').attr('src','img/much-better-img.jpg');
使用できますか:
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 を動かす必要はありません。
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]);
}
属性で始まるセレクターを使用して画像を検索し、置換を行うことができます。
$("img[src^='/img']").each(function(){
$(this).attr("src", "new image");
});
すべての画像を取得して、そのソースを確認できます
$('img').foreach(function(o){
if (o.attr('src')=='oldfile')
o.attr('src', 'newfile');
});
これは長いですが、他の方法はわかりません。