2011-10-15 34 views
1

我遇到了jQuery循环插件及其超时的小问题。jQuery Cycle +最小超时时间

我正在使用scrollLeft效果,并希望让它始终保持滚动(如果您知道我的意思,就类似于新闻报道器)。现在使用timeout: 0将无法​​工作,因为它会根本禁用自动滚动。所以我想使用timeout: 10(有一个几乎不明显的超时),但这不工作太多,因为无论我设置超时多低,超时总是似乎是大约一秒(即使使用timeout: 1(即使使用timeout: 1 )。

再让它多一点明确:

增加超时timeout: 10000有预期的效果,并暂停10秒的滑动,但它下降到timeout: 1看起来就像好像我以前timeout: 1000

我不知道问题出在哪里,因为我一直在寻找各地的谷歌为最小超时,但无法找到任何东西,说超时最小为1000

脚本我使用的是非常简单的,所以我想应该是有没有错误,只是让你可以检查过我张贴:

$('#demo').cycle({ 
     slideExpr: 'p', 
     fx: 'scrollLeft', 
     next: '.next', 
     speedIn: 5000, 
     speedOut: 5000, 
     fastOnEvent: 1000, 
     containerResize: 0, 
     pause: 1, 
     timeout: 10 
    }); 

我希望我能解释我的问题不够好:)

问候!

p.s.我不想使用某种newsticker插件,但真的想用循环创建该效果。

回答

2

jQuery Cycle有一个名为continuous的选项,它是最接近插件可以来传统新闻股票。请尝试以下操作:

$('#demo').cycle({ 
    fx: 'scrollLeft', 
    continuous: 1 
}); 

我希望这有助于!

+0

哇!我仔细查看了一个小时的选项,Google研究了一个小时,我忽略了这一点!感觉像一个白痴现在:S非常感谢! – Andrej

3

如果您需要非常连续的滚动,您可以使用easeIneasyOut选项。试试这个:

$('#demo').cycle({ 
    fx: 'scrollHorz', 
    continuous: 1, 
    easeIn: 'linear', 
    easeOut: 'linear' 
}); 
+0

我可以担保这个答案。它为我工作!谢谢大卫! – racl101

1

在buildOptions()函数中找到下面的代码

var buffer = opts.fx == 'none' ? 0 : opts.fx == 'shuffle' ? 500 : 250; 
while((opts.timeout - opts.speed) < buffer) // sanitize timeout 
    opts.timeout += opts.speed;*/ 

和评论while循环

var buffer = opts.fx == 'none' ? 0 : opts.fx == 'shuffle' ? 500 : 250; 
/*while((opts.timeout - opts.speed) < buffer) // sanitize timeout 
    opts.timeout += opts.speed;*/