jQuery.Cycle - 在同一容器上使用两种不同的效果

时间:2010-07-08 08:59:17

标签: jquery jquery-plugins jquery-cycle jquery-effects

我目前正在使用 jQuery.Cycle 来循环浏览一些子<div>标记。但是,我希望默认周期fx为fade,当我点击nextprev选择器时,我希望周期fx暂时更改为scrollRightscrollLeft取决于点击的选择器。

这可能吗?

jQuery代码,如有必要:

$('#banner_content').cycle({
    fx: 'fade', // choose your transition type, ex: fade, scrollUp, shuffle, etc...
    timeout: 6500,
    speed: 2000,
    next: $("#right_arrow a"),
    prev: $("#left_arrow a"),
});

1 个答案:

答案 0 :(得分:11)

好的,我在jQuery Forum上添加了我的问题,创作者回复了以下answer

这是我为此开发的代码:

var slideIndex = 0;
var nextIndex = 0;
var prevIndex = 0;

$('#banner_content').cycle({
    fx: 'fade',//fx: 'scrollHorz', // choose your transition type, ex: fade, scrollUp, shuffle, etc...
    timeout: 8000,
    speed: 1000,
    easingIn:20,
    easingOut:40,
    after: function(currSlideElement, nextSlideElement, options) {
        slideIndex = options.currSlide;
        nextIndex = slideIndex + 1;
        prevIndex = slideIndex -1;

        if (slideIndex == options.slideCount-1) {
            nextIndex = 0;
        }

        if (slideIndex == 0) {
            prevIndex = options.slideCount-1;
        }
    }
}); 

$("div.left_arrow a").click(function () {
    $('#banner_content').cycle(nextIndex, "scrollRight");
});

$("div.right_arrow a").click(function () {
    $('#banner_content').cycle(prevIndex, "scrollLeft");
});