gpt4 book ai didi

jquery - 使用 jquery 平滑滚动图像

转载 作者:行者123 更新时间:2023-11-28 11:13:42 25 4
gpt4 key购买 nike

我正在使用 jQuery 制作 Logo slider 。我的第一个想法是使用由所有 Logo 组成的大型单张图像作为背景并为其位置设置动画。这背后的想法是通过只加载一个文件来减少 http 请求。

jQuery 代码是这样的:

<script>
$(function(){
var current = 0;
function bgscroll(){
// 20 pixel row at a time
current -= 20;
// move the background with backgrond-position css properties
$('#slider').animate({'background-position' : current+'px'}, 100, 'linear');}
setInterval(bgscroll, 1);
});
</script>

但是动画有问题。它闪烁且不平滑。所以有人知道如何让这个动画更流畅吗?

当前的 CSS

#slider{
height: 97px;
overflow: hidden;
background-image: url("../img/logos-long.jpg");
background-repeat: repeat-x;
width: 100%;
}

最佳答案

在您的示例中,interval 在一个 animation 循环完成之前被触发了多次,所以...

jsBin demo

不需要setInterval
当我们可以使用您的函数和动画回调创建循环时!

$(function(){
function bgscroll(){
$('#slider').stop().animate({'background-position':'-=1000'},10000,'linear',bgscroll);
}
bgscroll(); // initiate!!
});

使用 .stop() 清除动画队列将使它(不完美但)好得多。

关于jquery - 使用 jquery 平滑滚动图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12206354/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com