3

好的,所以我有这个函数可以为每个带有可见类的 img 获取 img src:

$('.visible').each(function() {
        var img = ($(this).attr('src'));
          alert(img);
            });

现在我需要比较前两个 img src 看看它们是否相同我试过这个:

   $('.visible').each(function() {
         var firstImg = ($(this).eq(0).attr('src'));
         var secondImg = ($(this).eq(1).attr('src'));

if(firstImg == secondImg){
alert('match');
}else{
alert('not a match'); 
}

            });

这显然是错误的,所以我该怎么做呢?

4

2 回答 2

5

each处理程序内部this引用单个图像元素,因此$(this).eq(1).attr('src')将始终返回undefined

你需要的是

var $imgs = $('.visible');

var firstImg = $imgs.eq(0).attr('src');
var secondImg = $imgs.eq(1).attr('src');

if(firstImg == secondImg){
    alert('match');
}else{
    alert('not a match'); 
}
于 2013-09-18T06:15:36.063 回答
3

http://jsfiddle.net/j5bsU/

HTML

<img class="visible" src="fake.png" />
<img class="visible" src="anotherfake.png" />
<img src="noclassimg.png" />
<img class="visible" src="lastimg.png" />

JS

$(document).ready(function()
{
    var imgs = $('.visible');
    var firstSrc = imgs[0].src;
    var secondSrc = imgs[1].src;
    alert(firstSrc == secondSrc);
});
于 2013-09-18T06:20:14.150 回答