你如何判断Twitter引导程序轮播是转发还是返回?我希望能够做到这样的事情:
$('#myCarouse').on('slide', function(e) {
if (fwd?) {do something}
});
答案 0 :(得分:4)
Carousel插件附加到幻灯片事件对象的唯一特殊信息是relatedTarget
属性,其中包含要切换到的元素。这可用于手动计算您要在旋转木马中移动的位置。
有些事情:
$('#myCarousel').on('slide', function (e) {
var $active = $(this).find('.item.active')
, children = $active.parent().children()
, activePos = children.index($active)
, nextPos = children.index(e.relatedTarget)
, diff = nextPos - activePos;
if (diff === 1 || diff < -1 || diff === 0) {
console.log('next');
} else {
console.log('prev');
}
});
那diff === 0
是为了处理我在最后一张幻灯片上移动到第一张幻灯片时看到的奇怪行为。出于某种原因,activePos
和nextPos
相等。我无法理解它;只是是。
这是一个演示: