Javascript 从div中的图像获取Id属性

Javascript 从div中的图像获取Id属性,javascript,jquery,Javascript,Jquery,我有一个div,它包含1到多个带有下一个和上一个图像按钮的图像。当用户单击下一个/上一个按钮时,使用jquery将当前图像样式从display:block更改为display:none。我需要从显示ie的当前图像中获取ID属性。是否应用了display:block样式 <div id="propPhotos" name="propPhotos"> <div id="propPhotsDivList"> <div id="imageNameId0

我有一个div,它包含1到多个带有下一个和上一个图像按钮的图像。当用户单击下一个/上一个按钮时,使用jquery将当前图像样式从
display:block
更改为
display:none
。我需要从显示ie的当前图像中获取ID属性。是否应用了
display:block
样式

<div id="propPhotos" name="propPhotos">
   <div id="propPhotsDivList">
        <div id="imageNameId0" style="display:block">
             <img src="/PropertyImages/1/171fc210b4584f41936a078c4176c7e0.jpg" height="200" width="200" id="3"/>
        </div>
        <div id="imageNameId1" style="display:none">
            <img src="/PropertyImages/1/114810f0067749eda8049d2f8269dd00.jpg" height="200" width="200" id="4"/>
        </div>
        <div id="imageNameId2" style="display:none">
            <img src="/PropertyImages/1/8.jpg" height="200" width="200" id="15"/>
        </div>
        <div id="imageNameId3" style="display:none">
            <img src="/PropertyImages/1/e8f182ab645549b399cebc67ed996d151.jpg" height="200" width="200" id="25"/>
        </div>
    </div>
    <div>
        <div class="row">
            <input type="button" id="NextImage" value="Next Image" onclick="ImageNext()" /><input type="button" id="PrevImage" value="Previous Image" onclick="    ImagePrev()" />
        </div>
        <div class="row">
            <button type="button" class="AddImage">Add Image</button><button type="button" class="RemoveImage">Remove This Image</button>
        </div>

    </div>

因此,当用户单击其中一个按钮时,它应该将id值分配给CurrentImageId。这对一个用户不起作用,并且在未单击“下一个”或“上一个”图像按钮的情况下,对初始加载没有帮助。

对于初始加载,有几种不同的方法。以下是几个例子:

使用
:visible
选择器:

var currentImageId = $('#propPhotsDivList > div:visible > img').prop('id');
或者与
过滤器()结合使用

如果使用单击处理程序隐藏并正确显示div,则也可以在其内部使用相同的功能

$('#propPhotsDivList').children('div:not(:hidden)').attr('id');
var currentImageId = $('#propPhotsDivList img').filter(function(){
    return $(this).parent('div').is(':visible');
}).prop('id');
$('#propPhotsDivList').children('div:not(:hidden)').attr('id');