【发布时间】:2012-11-11 18:50:21
【问题描述】:
我正在尝试为 div 元素设置动画,以便在用户单击链接后在浏览器窗口顶部滑出屏幕。当用户向下滚动页面超过某个点时,会出现此链接。当单击 div 时,浏览器窗口会动画并滚动到页面顶部,因为“Back to top” div 会淡出。我需要让这个“回到顶部”的 div 不仅淡出,而且在淡出时滑到屏幕外的浏览器窗口顶部。到目前为止,这是我所拥有的:
Javascript:
$(function(){
$("#back-to-top").hide();
$(function() {
$(window).scroll(function() {
if($(this).scrollTop() > 100) {
$('#back-to-top').fadeIn('slow');
} else {
$('#back-to-top').fadeOut('slow');
}
});
$('a#back-to-top').click(function() {
$('body,html').animate({
scrollTop: 0
}, 800);
return false;
$('#back-to-top').animate({ // The part that doesn't work
margin: '-800px 0 0 0'
// top: '-800px'
});
});
});
});
【问题讨论】:
-
如果能在 jsfiddle.net 上构建就太好了?
-
顺便说一句,为什么你会在你的动画代码之前返回 false ?我敢打赌代码
$('#back-to-top').animate()已经死了。 -
@PulkitMittal 你应该把它放在一个答案中,因为
return false;肯定会阻止这段代码的代码工作。
标签: jquery html css scroll jquery-animate