检测引导转盘是前进还是后退

时间:2012-09-11 16:08:56

标签: jquery twitter-bootstrap carousel

你如何判断Twitter引导程序轮播是转发还是返回?我希望能够做到这样的事情:

$('#myCarouse').on('slide', function(e) {
  if (fwd?) {do something}
});

1 个答案:

答案 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是为了处理我在最后一张幻灯片上移动到第一张幻灯片时看到的奇怪行为。出于某种原因,activePosnextPos相等。我无法理解它;只是

这是一个演示:

JSFiddle