jQuery: 如何读取动态变化的图片源?

jQuery: How to read the dynamically changed image source?

当用户点击 "banner" class 第一次在 "if" 语句中检查图像来源并得到完美更改。现在的问题是当用户再次点击 "banner" class 时,它不会进入 "else" 块,因为它没有读取动态更改的源。解决方案是什么?

$(function() {

  $('.banner').click(function(){     

    if($("#left").attr('src',"img/unSelectedBanner.jpg") && 
       $("#right").attr('src',"img/unSelectedLogo.jpg"))
       {
          $("#left").attr('src',"img/SelectedBanner.jpg");
          $("#right").attr('src',"img/SelectedLogo.jpg");
       } 
       else if($("#left").attr('src',"img/SelectedBanner.jpg") && 
               $("#rightARM").attr('src',"BodyImage/rightArmSelected.png"))
               {
                  $("#leftARM").attr('src',"BodyImage/leftArm.png");
                  $("#rightARM").attr('src',"BodyImage/rightArm.png");
               }    
  });

});

您不是在将属性的内容与字符串进行比较,而是在检查 设置 属性是否 returns 真/假。

所以代替:-

if($("#left").attr('src',"img/unSelectedBanner.jpg")) { ... }

你应该使用

if($("#left").attr('src') == "img/unSelectedBanner.jpg") { ... }

与所有其他检查相同。