我在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
});
答案 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/