jCarousel重置滚动位置

时间:2011-04-28 23:05:28

标签: jquery ajax jcarousel

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

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

我使用.empty()

清空div中的数据

场景是这样的:

首次加载:

//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
    });

2 个答案:

答案 0 :(得分:0)

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

       success:function(data){

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

        }

这将清除并重置位置。

或者你可以打电话给carousel.pos(0);回到起点。

如果您需要更多功能,最好查看源中可用的功能:

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

答案 1 :(得分:0)

我对jcarousel不熟悉,但它看起来很奇怪,因为你需要在轮播对象上.add。而只是设置HTML。

在这里查看ajax示例(动态示例):http://sorgalla.com/jcarousel/