0

你可以在这里看到我从 jquery == >开始

我用 vimeo-videos 制作了一个简单的幻灯片。如果您单击向上/向下箭头,我的<ul>-List 会上下移动。<li><</li>但是,如果最后一个视频 ( ) 已经到达,我怎么能停止移动。我需要一个 If/else 条件,但我不知道如何..

某事。像这样,如果我最后一次<li>到达,请停止添加 80px 和 return.false() ..

我的页面上有几次这些幻灯片,有时我有 2 个视频,3 个、4 个或 15 个 .. 所以我需要一个通用的解决方案 ..

4

3 回答 3

0

滚动 80px 可能不是我会做的方式,但使用你的方法,试试这个:

<script type="text/javascript">
// vimeo videos
$(document).ready(function(){
    $(".mediagallery").mediaGallery({autoplay:1});

// scroll action
$('#mediagallery_down').click(function() {
    var pos = $('#med_list_cont').css("top").replace("px", "");
    if (pos <= 0 )
        $('#med_list_cont').css("top", parseFloat(pos) + -80 +"px");
});

$('#mediagallery_up').click(function() {
    var pos = $('#med_list_cont').css("top").replace("px", "");
    if (pos >= ($('#med_list_cont').height() - $('#mediagallery_list').height()))
    {
        $('#med_list_cont').css("top", parseFloat(pos) + 80 +"px");
    }
});

});
</script>
于 2012-04-21T19:17:53.393 回答
0
if($('ul li').last()){
  $(this).stop().animate({'margin-top':'80px'}, function(){
    return false;
  });

}else{
  // all other list items. 
  // Normal stuff here.
}
于 2012-04-21T19:11:29.950 回答
0

是的 offset(); 这就是我需要的提示。谢谢

jQuery('#mediagallery_down').click(function() {

     if(jQuery('#med_list_cont li:last').offset().top <= 790)
                    jQuery(this).fadeOut('fast');
    var pos = jQuery('#med_list_cont').css("top").replace("px", "");
    jQuery('#med_list_cont').css("top", parseFloat(pos) + -80 +"px");

});

jQuery('#mediagallery_up').click(function() {
        jQuery('#mediagallery_down').show();
 if(jQuery('#med_list_cont li:first').offset().top >= 464)
               return false;    

var pos = jQuery('#med_list_cont').css("top").replace("px", "");
    jQuery('#med_list_cont').css("top", parseFloat(pos) + 80 +"px");

});
于 2012-04-25T06:16:01.637 回答