我正在使用此代码并且它正常工作从上到下移动但我想连续移动而不是单次。谢谢!
$(document).ready(function(){
var bodyHeight = $('body').height();
var footerOffsetTop = $('#moving').offset().top;
var topToBottom = bodyHeight -footerOffsetTop;
$('#moving').css({top:'auto',bottom:topToBottom});
$("#moving").delay(100).animate({
top: '100px',
}, 3000);
})
答案 0 :(得分:1)
$(document).ready(function() {
setInterval(function(){
var bodyHeight = $('body').height();
var footerOffsetTop = $('#moving').offset().top;
var topToBottom = bodyHeight - footerOffsetTop;
$('#moving').css({
top : 'auto',
bottom : topToBottom
});
$("#moving").delay(100).animate({
top : '100px',
}, 3000);
}, 3200);
})
答案 1 :(得分:0)
试试这个:
$(document).ready(function() {
var bodyHeight = $('body').height();
var footerOffsetTop = $('#moving').offset().top;
var topToBottom = bodyHeight - footerOffsetTop - $('#moving').outerHeight();
$("#moving").animate({
top : topToBottom,
}, 3000);
});
演示 - http://jsfiddle.net/c9db5/
您根本不需要setInterval
。你只需要计算出屏幕的高度减去#moving
div的高度,然后你就可以一次性制作动画。