1

我正在尝试定位每个手风琴组中的第一张图片。我已经包含了其中之一的示例。

<div class="accordion-heading">
          <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseSix">All Videos</a>
</div>
     <div id="collapseSix" class="accordion-body collapse">


          <div id="video-scroll6" class="accordion-inner">
             <div style="width: 3080px;">

               <img src="demo.jpg" data-video="1" />
               <img src="demo.jpg" data-video="2" />

            </div>
        </div>
     </div>

这是我到目前为止没有运气的尝试......

$(".accordion-heading").click(function () {

    $(this).find(".accordion-inner div img").first().attr('data-video');

});
4

4 回答 4

2
$(this).next()​.find('img').first().data('video');

这是工作的jsfiddle

在 jQuery 1.8 中,我们只需访问 .data('attr') 而不是attr('data-name')

于 2012-11-08T21:08:36.097 回答
1

你也可以这样做......如果你想选择第一个以外的图像,这会让你在路上更容易

$(".accordion-heading").click(function() {

 // :eq(0) = 1st img, :eq(1) = 2nd img and so on...
$(this).next().find(".accordion-inner div img").eq(0).data('video') ;

});

小提琴

于 2012-11-08T21:25:01.310 回答
0

尝试:

$(this).next().find( $(this).next().find(".accordion-inner div img").first().attr('data-video')).first().attr('data-video');

由于您单击包含图像的 div 之前的 div,因此您需要使用.next()选择器。

jsFiddle 示例

于 2012-11-08T21:08:27.947 回答
0
$(".accordion-inner div img").first().attr('video')

应该管用。

于 2012-11-08T21:10:26.873 回答