子.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);
}
});
有没有最好的方法来更改所有图像的路径。我厌倦的是我将路径分割到应用程序节点,因为我需要在应用程序级别附加我的新网址。
最佳答案
这是做你已经做的事情的另一种方式。在此代码中,您可以拥有任意数量的图像,您只需将它们与 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/
希望对你有帮助!
关于javascript - 如何编写使用Jquery条件更改图像源的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24503241/