jQuery如何检查图片是否已经加载?

8
我有一个动态填充的图片轮播。可能会有多达5张图片,但如果少于5张图片,我需要在代码中引入一些if语句。使用jQuery是否可以检查img src是否为空?
例如,如果我有一个class为“optional”的图像,但它没有url,是否有一种方法可以用jQuery检测到这一点?
<img class="optional" src="" />

你想要一个选择器来查找那些src属性为空的图片,还是想解析所有相关的图片并对它们运行if语句? - Reinstate Monica Cellio
5个回答

15

试试这个

$('.optional').each(function () {
    if (this.src.length > 0) {
        //if it has source
    }
});

1
我可以使用 src.length == 0 来代替 > 0,这样如果没有源代码就会有一个语句吗? - Sam Skirrow
@SamSkirrow 是的,你可以。 - Anton

9
您可以使用属性选择器:
$('img.optional[src=""]');

如果您想选择那些没有空的src属性的图像:

$('img.optional[src!=""]');

2
$('img.optional[src=""]') 更加精确。 - opalenzuela

3
if($.trim($(".optional").attr("src")) != "")// check image has src
{
// do your stuff
}
else{
}

reference attr and trim


1
JQUERY :
if($('img.optional').attr('src') != "") {
  // Image has src !
} else {
  // Image has not src :'(
}

0

您可以使用

img[src=""] {
   display: none;
}

上述选择器将仅匹配,如果src属性没有值。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接