2011-04-28 124 views
0

我有一个关于在jCarousel中加载新数据时重置滚动位置的问题。 链接是在这里: http://rjwcollective.com/equinox/rishi_gallery/eqgall.phpjCarousel重置滚动位置

新的数据来的时候,你在左侧点击侧边栏上的过滤器英寸 但是,如果您开始在右侧边栏上的轮播中滚动,然后重新选择过滤器,则新加载的数据不会重置到顶部位置。

我在div使用.empty()清空出的数据

的情况是这样的:

第一负载:

//first load 
$.ajax({ 
    type:"POST", 
    url:"sortbystate.php", 
    data:"city=&gender=&category=", 
    success:function(data){ 
      //carousel 
      $('#thumbs').html(data); 

    } 

});//end ajax 

过滤器的选择:

$(".statelist :input").click(function(){ 
    $('#thumbs').empty(); 

    var state = $('.statelist input:checked').attr('value'); 
    var gender = $('.gender input:checked').attr('value'); 
    var category =$('.category input:checked').attr('value'); 
     $.ajax({ 
      type:"POST", 
      url:"sortbystate.php", 
      data:"city="+state+"&gender="+gender+"&category="+category, 
      success:function(data){ 

        $('#thumbs').html(data); 

      } 


     });//end ajax 
    }); 

回答

0

您可以在新数据加载时重置轮播:

 success:function(data){ 

       carousel.reset(); 
       $('#thumbs').html(data); 

     } 

这将清除并重置位置。

或者您可以致电carousel.pos(0);回到起点。

如果你需要更多的功能,它是最好看源提供的功能:

https://github.com/jsor/jcarousel/blob/master/lib/jquery.jcarousel.js

+0

谢谢@pabloserbo功能是 'carousel.scroll(1,0);'第一是项目的索引要滚动到,第二个是布尔值是否应该使用动画。 – frishi 2011-04-28 23:40:26

0

我不熟悉的jCarousel但它看起来像它的行事怪异,因为你需要.add上传送带对象。相反,你只需设置HTML。

看一看在AJAX样本这里(动态实例):http://sorgalla.com/jcarousel/

+0

加里,你的方法是我应该从一开始就采取的方法,但是,我太深入部署。 @pabloSerbo指导帮助我得到了一个临时解决方案,即重新设置旋转木马的滚动位置。 – frishi 2011-04-28 23:42:04