Jquery Cycle Plugin - 如何在单击寻呼机链接时暂停幻灯片放映

时间:2010-10-29 14:59:28

标签: jquery jquery-plugins cycle

我正在使用Jquery循环插件来创建公告幻灯片。当用户点击其中一个寻呼机链接时,我想暂停幻灯片放映。我已经尝试使用pagerClick函数并将暂停函数附加到寻呼机链接的onclick事件,但都没有奏效。你能帮忙吗?

$('#highlights')
.after('<div id="pager">')
.cycle({
    fx: 'fade',
    timeout: 4000,
    pager: '#pager',
    pagerEvent:'mouseover',
    activePagerClass: 'active',
    pause: 1,
    pauseOnPagerHover: 1,
    pagerClick:function() {$('#highlights').cycle('pause')}
});

4 个答案:

答案 0 :(得分:2)

pause/resume demo你可以做到:

$('#pager a').click(function() { 
    $('#highlights').cycle('pause'); 
});

这应该绑定到寻呼机中的链接。

$('#highlights')
.after('<div id="pager">')
.cycle({
    fx: 'fade',
    timeout: 4000,
    pager: '#pager',
    pagerEvent:'mouseover',
    activePagerClass: 'active',
    pause: 1,
    pauseOnPagerHover: 1
});

$('#pager a').click(function() { 
    $('#highlights').cycle('toggle'); 
});

答案 1 :(得分:1)

使用pause命令可以使用以下代码:

jQuery(document).ready(function($) {

    $('#highlights').cycle({ 
        fx:     'fade', 
        speed:  'slow', 
        timeout: 4000, 
        pager:  '#pager', 
        pagerAnchorBuilder: function(idx, slide) { 
            return '#controls a:eq(' + idx + ')'; 
        } 
    });

    $('#pager a').click(function() { 
        $('#highlights').cycle('pause'); 
    });

});

答案 2 :(得分:0)

也许是.stop()方法?

http://api.jquery.com/stop/

答案 3 :(得分:0)

尝试将pauseOnPagerHover设置为0 ...当您将其设置为1时,当您将鼠标悬停在寻呼机上时它会暂停,但还包括一个在mouseout上播放的功能。因此你的onclick功能暂停已经暂停的节目,然后当你的光标离开寻呼机时,mouseout功能无论如何都会让它再次播放。

我猜'切换'可能正在工作,因为可能循环使用切换来在pauseOnPagerHover函数中播放和暂停?然后你在悬停时暂停,在点击时播放,在鼠标移动时再次暂停。