我在 jQuery 循环插件及其超时方面遇到了一个小问题。
我正在使用 scrollLeft
效果并希望让它始终保持滚动(类似于新闻收报机,如果你知道我的意思的话)。现在使用timeout: 0
将不起作用,因为它会完全禁用自动滚动。
所以我想到使用timeout: 10
(有一个几乎不明显的超时),但这也不起作用,因为无论我将超时设置多低,超时似乎总是大约一秒(即使使用 timeout: 1
)。
再次使其更清楚一点:
将超时增加到 timeout: 10000
达到了预期的效果,暂停滑动10秒,但将其减小到timeout: 1
看起来就像我使用 timeout: 1000
我不确定问题出在哪里,因为我在 Google 上到处寻找最小超时,但找不到任何表示最小超时为 1000
的内容。
我使用的脚本非常简单,所以我认为那里应该没有错误,但只是为了让您也可以检查我将其发布:
$('#demo').cycle({
slideExpr: 'p',
fx: 'scrollLeft',
next: '.next',
speedIn: 5000,
speedOut: 5000,
fastOnEvent: 1000,
containerResize: 0,
pause: 1,
timeout: 10
});
我希望我能够很好地解释我的问题:)
问候!
附:我不想使用某种 newsticker 插件,但真的很想用循环创建这种效果。
最佳答案
如果您需要真正连续的滚动,可以使用 easeIn
和 easyOut
选项。试试这个:
$('#demo').cycle({
fx: 'scrollHorz',
continuous: 1,
easeIn: 'linear',
easeOut: 'linear'
});
关于jQuery 循环 + 最小超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7779094/