else条件不适用于jquery中的src属性[duplicate]

问题描述 投票:0回答:1

这个问题在这里已有答案:

尝试使用jquery下面的代码在网页中添加alt文本但是能够获得第一张图像的正确值,否则if和else条件不能正常工作。无法为其他图像添加alt文本

$(document).ready(function() {

  $("img ").each(function() {
    var img = $(this);

    if (!img.attr("alt") || img.attr("src") === "/temp/iconcache/flags/32x32/flag_brazil.png")
      img.attr("alt", "Brazil Flag");
    else if (!img.attr("alt") || img.attr("src") === "/temp/iconcache/flags/32x32/flag_China.png")
      img.attr("alt", "China Flag");
    else {
      img.attr("alt", "");
    }
  });
});
javascript jquery if-statement src
1个回答
1
投票

当你想要||时,你正在使用&&。您的每个条件都有if (!img.attr("alt") || ...,这意味着如果图像的alt属性为null,则将忽略条件表达式的其余部分。这意味着无论alt属性的值如何,null src都将导致第一个分支(“brazil”)运行。

© www.soinside.com 2019 - 2024. All rights reserved.