Jquery 基于父DIV触发Colorbox幻灯片

Jquery 基于父DIV触发Colorbox幻灯片,jquery,colorbox,Jquery,Colorbox,这可能是一个相当新手的jQuery/Colorbox问题,但我还没有找到解决方案 在我的一个页面上,我有多个幻灯片,其中有一个具有唯一ID值的DIV作为父项,请参阅下面的代码以获得精简的示例 我如何才能最好地编写代码,以便在单击#display_59>a.slides_colorbox时,只显示特定幻灯片中的图像 <div id="display_59" class="display"> <div class="slides_thumbs"> <a

这可能是一个相当新手的jQuery/Colorbox问题,但我还没有找到解决方案

在我的一个页面上,我有多个幻灯片,其中有一个具有唯一ID值的DIV作为父项,请参阅下面的代码以获得精简的示例

我如何才能最好地编写代码,以便在单击#display_59>a.slides_colorbox时,只显示特定幻灯片中的图像

<div id="display_59" class="display">
   <div class="slides_thumbs">
     <a class="slides_colorbox" href="/images/IMG_3440.JPG"><img src="/images/made/public/burns/IMG_3440_thumb.JPG" alt="" width="62" height="62" /></a>
     <a class="slides_colorbox" href="/images/IMG_3441.JPG"><img src="/images/made/public/burns/IMG_3441_thumb.JPG" alt="" width="62" height="62" /></a>
   </div>
</div>

<div id="display_60" class="display">
   <div class="slides_thumbs">
     <a class="slides_colorbox" href="/images/IMG_2444.JPG"><img src="/images/made/public/burns/IMG_2444_thumb.JPG" alt="" width="62" height="62" /></a>
     <a class="slides_colorbox" href="/images/IMG_2445.JPG"><img src="/images/made/public/burns/IMG_2445_thumb.JPG" alt="" width="62" height="62" /></a>
   </div>
</div>

...
也就是说,如果用户单击#display(u 59#内的图像,则只会显示IMG_3440.jpg和IMG_3441.jpg

<div id="display_59" class="display">
   <div class="slides_thumbs">
     <a class="slides_colorbox" href="/images/IMG_3440.JPG"><img src="/images/made/public/burns/IMG_3440_thumb.JPG" alt="" width="62" height="62" /></a>
     <a class="slides_colorbox" href="/images/IMG_3441.JPG"><img src="/images/made/public/burns/IMG_3441_thumb.JPG" alt="" width="62" height="62" /></a>
   </div>
</div>

<div id="display_60" class="display">
   <div class="slides_thumbs">
     <a class="slides_colorbox" href="/images/IMG_2444.JPG"><img src="/images/made/public/burns/IMG_2444_thumb.JPG" alt="" width="62" height="62" /></a>
     <a class="slides_colorbox" href="/images/IMG_2445.JPG"><img src="/images/made/public/burns/IMG_2445_thumb.JPG" alt="" width="62" height="62" /></a>
   </div>
</div>

...

正如预期的那样,它将所有四个图像添加到幻灯片中。(对于上下文,每个幻灯片都连接到一个博客条目。由于条目的数量将发生变化,因此将出现未知数量的#display_XX DIVs。)

您可以执行以下操作:

$('.display').each(function(i){
  var groupName = 'group'+i;
  $('.slides_colorbox', this).colorbox({rel:groupName});
});
答案是哦,非常接近!我通过做一些调整使它能够工作:我将HTML中的.slides\u colorbox替换为.groupX(用于group1、group2等),并在该类上启动

$('.display').each(function(i){   
  var groupName = 'group'+(i+1);
  $("."+groupName).colorbox({rel:groupName});
});

“组”+(i+1)是因为页面由ExpressionEngine提供支持,我需要添加+1,以便groupName与基于零的{count}标记对齐。

这太接近了,Jack。我在下面添加了我自己的答案,以更好地显示我为使其工作所做的调整。非常感谢!啊!我犯了一个错误,没有向选择器添加上下文。编辑了我的答案。