jQuery - 如何检查img src是否缺少文件名?

时间:2011-04-21 16:36:08

标签: jquery image replace src

我有<img>

 <img src="http://example.com/mmm/01.jpg" class="test">

如何检查src是否缺少01.jpg并将其替换为其他图像?

基本上

if (img src is 'http://example.com/mmm/') { 
    replace src with 'http://example.com/mmm/test.jpg'
}

6 个答案:

答案 0 :(得分:3)

这样的事情应该有效:

var $img = jQuery("#myImg");
var src = $img.attr("src");

// if you have more image types, just add them to the regex. 
// I've used png and jpg as examples
if(!/\.(jpg|png)$/.test(src)) {

   var img = "test.jpg";

   // to see if the src url ends with / or not
   if(!/\/$/.test(src)) {
      img = "/" + img;
   }

   $img.attr("src", src + img);
}

答案 1 :(得分:2)

解决方案:jQuery/JavaScript to replace broken images

这不仅仅是关于堆栈溢出的第一次打击,但是谷歌也是......

答案 2 :(得分:1)

您可以检查src属性中的最后一个字符,看它是不是'/'......

var img = $("img.test");
var src = $(img).attr("src");

if (src.lastIndexOf("/")+1 == src.length){
    $(img).attr("src",src+"test.jpg");
}

答案 3 :(得分:0)

检查$("img.test").attr("src")

答案 4 :(得分:0)

$(yourImg).attr("src")会将图片的网址作为字符串返回给您(或允许您设置),以便您可以将其与上述值进行比较。

答案 5 :(得分:0)

// Can 'fix' many imgs at once (with the appropriate logic in the body)
$('img').attr('src',function(i,src){
  // If it's a JPG, leave it alone, otherwise...
  return /jpe?g$/.test(src) ? src : 'http://example.com/mmm/test.jpg';
});