在Cycle Gallery上跳过第一张图像

时间:2013-06-03 09:16:18

标签: javascript jquery cycle jquery-cycle

我正在使用jQuery循环。那是我的JS:

$(".page-social-media .works_gallery .slider_cycle").each(function(){
    var id_nr = $(this).attr('rel');
    $(this).cycle({ 
        fx:    'scrollHorz',
        speed:  500,
        timeout: 0, 
        next:   '#next_' + id_nr, 
        prev:   '#prev_' + id_nr,
    });
}); 

使用了startingSlide选项但scrollHorz效果崩溃并在最后一个上显示第一张图片。如何在我的画廊中跳过第一张图片?

更新:

我的HTML结构是动态的。像这样:

<ul class="slider_cycle">
    <li><img src="http://dummyimage.com/800x600/4d494d/686a82.gif&text=placeholder+image" alt="placeholder+image" rel="160"></li>
    <li><img src="http://dummyimage.com/800x600/4d494d/686a82.gif&text=placeholder+image" alt="placeholder+image" rel="160"></li>
    <li><img src="http://dummyimage.com/800x600/4d494d/686a82.gif&text=placeholder+image" alt="placeholder+image" rel="160"></li>
    <li><img src="http://dummyimage.com/800x600/4d494d/686a82.gif&text=placeholder+image" alt="placeholder+image" rel="160"></li>
</ul>

1 个答案:

答案 0 :(得分:0)

如果第一张图片始终存在,您应该能够执行以下操作:

$(".page-social-media .works_gallery .slider_cycle").each(function(){
    var id_nr = $(this).attr('rel');
    if ($(this).is(':first-child') == false){
        $("#" + id_nr).cycle({ 
        fx:    'scrollHorz',
        speed:  500,
        timeout: 0, 
        next:   '#next_' + id_nr, 
        prev:   '#prev_' + id_nr,
    });
   } else{
   $(this).style('display', 'none');
   }
}); 

这样,如果元素是第一个孩子 - 顶部图片,它会将显示设置为无,否则它将正常循环,但它取决于html的格式 - 第一个图像是否被采取离开,等等。