如何编写使用条件Jquery更改图像源的最佳方法

How to write the best way to change the image source using conditions Jquery

本文关键字:图像 最佳 方法 何编写 条件 Jquery      更新时间:2023-09-26

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。

这是完成所做工作的另一种方式。在这段代码中,您可以拥有任意数量的图像,所需要的只是将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/

希望它能有所帮助!

像一样尝试

$(".class > img").each(function() {
   var src = $(this).attr('src');           
   $(this).attr('src', 'newsrc');           
});