在div中堆叠时获得活动的img

时间:2014-02-03 23:55:45

标签: javascript jquery html

我有一组相互堆叠的图像,我试图操纵焦点中的图像(当前显示在顶部的图像)所有img div标签都有一个绝对位置,因此它们可以使用#g;重新显示在彼此之上。

我的HTML看起来像这样:

<div id="origin" class="ui-test">
  <div class="polaroid ui-test">
      <img src="http://example.com/84655/l/72105d6f46205a948f00f6e59c299930.jpg" >
  </div>
  <div class="polaroid ui-test">
      <img src="http://example.com/77676/l/819e2093be4c61d2e21b1175f9d0f0f9.jpg" >
  </div>
  <div class="polaroid ui-test" style="left: 288.328125px; top: -8px; display: none;">
      <img src="http://example.com/47901/l/79f936ef9847793254bad21e16b2448f.jpg" >
  </div>
  <div class="polaroid ui-test" style="left: 94.328125px; top: 6px; display: none;">
      <img src="http://example.com/49761/l/6d10064d6b189c6934fd264ac295f5f8.jpg" >
  </div>
</div>

我已尝试过以下操作,但它似乎无法正常工作:

var currentImg= $('.polaroid:focus'); 

currentImg.animate().toggle( "drop");

它没有回归我的期望。我希望它能够将第二张图像(当前显示的图像)返回

有什么想法我做错了吗?

2 个答案:

答案 0 :(得分:1)

试试这个:

var currentImg = $('.polaroid:visible');

http://api.jquery.com/visible-selector/了解更多信息。

答案 1 :(得分:0)

我最终这样做是为了找到最顶层的可见div:

    var currentImg;
    $('.polaroid').each(function(){
        if ($(this).is(":visible")) {
            currentImg = this;
        }
    });

    console.log(currentImg);