Jquery获取下一个元素的图像ID

时间:2014-08-01 05:52:04

标签: javascript jquery

我有一个图像列表,我正在尝试使用Jquery从当前元素中查找下一个图像ID。但我似乎无法让jquery工作。

<div class="grid" style="position: relative;">
 <div class="preview">
  <img src="1.jpg" id="175" alt="">
 </div>
</div>
<div class="grid" style="position: relative;">
     <div class="preview">
      <img src="2.jpg" id="176" alt="">
     </div>
    </div>
<div class="grid" style="position: relative;">
     <div class="preview">
      <img src="3.jpg" id="177" alt="">
     </div>
    </div>

的JavaScript

var childId=6;
$( ".grid" ).click(function() {
        var image=$(this).find("img");
        var imageId=image.attr("id")
        show_image(imageId,childId);
    });

function show_image(imageId,childId){
  //need to get next image id in the group for next button , but code below is returning undefined
  var nextImageId=$(".grid .preview #" + imageId).next("img").attr("id");
}

3 个答案:

答案 0 :(得分:1)

在这种情况下,您不能直接使用.next(),因为图片彼此不是siblings使用,

var nextImageId= $("#" + imageId).closest('.grid').next(".grid").find('img').attr("id");

答案 1 :(得分:0)

使用它,它会在'nextImageId'变量中为您提供图像ID。

$( ".grid" ).click(function() { 
     var nextImageId = $(this).closest('.grid').next(".grid").find('img').attr("id");   
});

答案 2 :(得分:-1)

使用next()获取下一个网格选择器,然后找到img

 $(".grid").click(function () {
    var image = $(this).find("img");
    var imageId = image.attr("id")

   var nextImageId= $(this).next(".grid").find("img").attr("id")  // get next image id
});