使用carouFredSel作为无限循环滑块时,我遇到了一些麻烦,控件可以转到特定的幻灯片。这是我的实现代码:
$('.circular-gallery ul').carouFredSel({
width: '100%',
height:270,
align:'center',
items: {
start: 10,
width:340,
visible: 10
},
prev: {
button: $('.circular-gallery .prev')
},
next: {
button: $('.circular-gallery .next')
},
scroll: {
items: 1,
easing: 'quadratic',
onBefore: function(data){
var $current = $(data.items.visible[4]);
if(!data.scroll.duration){ // this happens on init, so just set active class
$current.addClass('active');
} else {
var $active = $('.circular-gallery ul li.active');
$active.find('.physician-name').fadeOut('normal', function(){
$(this).css('display','block').css('visibility','hidden');
$active.removeClass('active');
});
$current.find('.physician-name').css('visibility','visible').hide().fadeIn('normal', function(){
$current.addClass('active');
});
}
}
},
auto: {
play: false
}
});
var $items = {};
$('.physician').hoverIntent(function(){
slideToPhysician($(this).attr('rel'));
}, function(){ return false; });
function slideToPhysician(rel){
var $items = $('.circular-gallery ul li').trigger('currentVisible');
var index = $items.index($('li.'+rel));
//console.log(index);
//$('.circular-gallery ul').trigger('slideToPage', index);
$('.circular-gallery ul').trigger('slideTo', index);
}
问题是每个元素的索引不是常量。每次滑块移动时它都会改变。所以我无法确定要滑到哪一个。我在我的滑块上有每个li的类,我在链接上使用“rel”属性将相应的类传递给hoverIntent事件。在调试过程中,如果我翻转相同的名字,我可能得到索引6,然后它滑到一些幻灯片,如果我再次翻转它,我得到10.我无法弄清楚模式或我是否正在做首先是错误的。
也许我刚刚做错了,但目标是在页面中央放置一个带有“突出显示”项目的滑块,然后如果将鼠标悬停在名称上几秒钟,滑块将移动到该特定位置。照片。
感谢您抽出宝贵时间提供帮助!
答案 0 :(得分:5)
我通过将数组作为参数传递给slideTo
事件解决了几乎相同的问题。它包含单击的项目和carouFredSel项目索引:
$li.on('click', function() {
var index = 0;
$('#fred').trigger('slideTo', [$(this), index]);
});
查看示例here
答案 1 :(得分:3)
此代码对我有用:
$('.circular-gallery ul li')('click', function() {
$('#fred').trigger('slideTo', $(this).index());
});