使JQuery Cycle Plugin自动播放一次,并在幻灯片放映结束时停止播放

时间:2012-10-01 18:00:42

标签: jquery slideshow jquery-cycle

如何使Cycle插件自动播放一次,然后在幻灯片放映结束时停止播放?此外,Id喜欢暂停/播放导航按钮淡入,可用于再次由用户重新启动它。

这可能吗?

编辑1

这是我尝试过的,但幻灯片仍在继续......

$(document).ready(function() {
    $('#gallery').cycle({
        fx: 'fade',
        timeout: 3000, 
        speed: 500,
        autostop: 0,
        end: function(options) {  
               $('#gallery').cycle('stop');
                }
    });
});

编辑2

我现在已经在最后一张幻灯片上成功结束了幻灯片放映,但我相信通过使用这些特定参数可能会导致插件可用的播放/暂停切换功能出现问题......

发生的情况是,暂停/播放按钮确实起作用,但是一旦幻灯片完全结束,它就不再做任何事情,也不允许幻灯片重新开始。

以下是我目前编写的内容:

$(document).ready(function() {
    $('#gallery').cycle({
        fx: 'fade',
        timeout: 3000, 
        speed: 500,
        autostop: 1 // Stop slideshow at end
    });

    $('a#pause_resume_button').click(function() { 
        $('#gallery').cycle('toggle'); 
    });
});

2 个答案:

答案 0 :(得分:2)

有一个结束选项。

http://jquery.malsup.com/cycle/options.html

将它与停止配对并进行排序。

如果您知道幻灯片的数量,那么您也可以使用autoStop。

编辑:

$('#scroller').cycle({
        fx: 'fade',
        timeout: 3000, 
        speed: 500,
        autostop: 1,
        end: function(options) {  
          $('#gallery').cycle('stop');
          alert('finished');
        }
    });

http://jsbin.com/icohen/1/

编辑2:

http://jsbin.com/icohen/2/edit

答案 1 :(得分:0)

尝试在代码中设置此属性

autostop: 0, // true to end slideshow after X transitions (where X == slide count)

调用此方法恢复幻灯片放映

$('#slideshow').cycle('resume');