2013-10-10 47 views
0

感谢用户Rex,我现在使用以下代码更改动画效果的滚动页边距。更改滚动上的页边距(动画效果)

$(document).scroll(function() { 
$("#content").animate({margin: "0px 0px 0px 0px"}, 3000); 
}); 

http://jsfiddle.net/Vinay199129/qSe4e/10/

现在我想有同样的效果时,我向上滚动,该保证金可追溯到它的原始状态,我用下面的脚本检测向上或向下滚动尝试过,但这是行不通的:http://jsfiddle.net/qSe4e/14(警报信息帮我告诉我如果滚动检测脚本工作)

希望有人能帮助我

SOLUTION:

http://jsfiddle.net/qSe4e/15/

回答

0

编辑:

这个答案指的是这个的jsfiddle:http://jsfiddle.net/qSe4e/14

编辑完。

在jsfiddle中,您正在为窗口的滚动事件注册一个处理程序,它说:“窗口滚动时,为文档滚动事件注册一个处理程序”,这会搞砸一切。所以,你的代码看起来像这样:

$(document).scroll(function() { 
    $("#three").animate({margin: "0px 0px 0px 0px"}, 3000); 
}); 

如果真的只是是这样的:

$("#three").animate({margin: "0px 0px 0px 0px"}, 3000); 

基本上只是删除文档滚动包装。

然后,还有第二个问题,那就是jQuery会自动为你排队这些动画,所以当你滚动时它们会被延迟。你会得到一个像这样的更好的结果:

$("#three").animate({margin: "0px 0px 0px 0px"}, {queue: false, duration: 3000}); 

在你的小提琴做出这些变化,看看你得到什么。

+0

谢谢! :D http://jsfiddle.net/qSe4e/15/ –

+0

很高兴我可以帮助:) – rescuecreative