2013-10-10 48 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