我在 Stack Overflow 上搜索了一个类似的问题,但没有一个答案能解决我的问题。基本上,我有 2 个按钮可以使 div 的内容上下动画。它工作得很好,但我注意到,在我多次悬停后,动画效果每次都越来越慢。正如许多答案所建议的那样,我使用了“线性”缓动和 stop() 函数,但没有运气。你可以在这里看到一个活生生的例子:
http://www.diasporadu.com(侨民部分)。
这是我的 Jquery 代码(html 只是一个名为“显示”的 div,在一个名为“diasporarightbottom”的 div 中)
<script>
$(document).ready(function(){
var displayh= ($('#display').height()) - ($('#diasporarightbottom').height());
$('#displayup').hover(
function(){
$('#display').stop().animate({'top': -displayh}, 8000, 'linear');
},
function() {
$('#display').stop()
}
)
$('#displaydown').hover(
function(){
$('#display').stop().animate({'top': '0'}, 2000, 'linear');
},
function() {
$('#display').stop()
}
)
})
</script>