Sub.html:
<div>
<img src ="worlds/application/images/aa.png" class="path"/>
<img src ="worlds/application/images/bb.png" class="path"/>
<img src ="worlds/application/images/cc.png" class="path"/>
<img src ="worlds/application/images/dd.png" class="path"/>
<img src ="worlds/application/images/ee.png" class="path"/>
</div>
Jquery的:
$('#main').load( "../sub.html",function(data){
var imgSrc = $('.path');
var img1 = imgSrc[0].src.split('application')[0]+"css/images/aa.png";
var img2 = imgSrc[1].src.split('application')[0]+"css/images/bb.png";
var img3 = imgSrc[2].src.split('application')[0]+"css/images/cc.png";
var img4 = imgSrc[3].src.split('application')[0]+"css/images/dd.png";
var img5 = imgSrc[4].src.split('application')[0]+"css/images/ee.png";
if(imgSrc[0].src.indexOf('aa')>-1){
imgSrc[0].attr('src',img1);
}
});
有没有最好的方法来改变所有图像的路径。我累了的是我将路径拆分到应用程序节点,因为我需要在应用程序级别附加我的新URL。
答案 0 :(得分:2)
这是做你所做的另一种方式。在此代码中,您可以拥有所需数量的图像,只需将path
作为css类即可。
$('#main').load( "../sub.html",function(data){
var newPath = 'http://localhost:8080/Content/css/images/';
$.each($('.path'), function(index){
var originalSource = $(this).attr('src');
// Replacing the source
var newSource = newPath + originalSource.substr(originalSource.lastIndexOf('/') + 1);
// Setting the new value of src
$(this).attr('src', newSource);
});
});
您可以在此处查看一个有效的示例:http://jsfiddle.net/7zs7N/
希望它有所帮助!
答案 1 :(得分:1)
尝试喜欢
$(".class > img").each(function() {
var src = $(this).attr('src');
$(this).attr('src', 'newsrc');
});