2011-10-07 86 views
1

所以我做了一個JavaScript中的網格佈局,但它不像它應該工作。我已經設置好了,這樣它就可以改變一個元素的左邊界,使它「向左/向右滑動」。但是,由於某種原因,它拒絕滑動到最後一張幻燈片。不知道爲什麼,似乎無法找到錯誤!Javascript:動畫marginLeft時出現奇怪的錯誤?

這裏是整個頁面的副本:

http://jsbin.com/obivap/3/edit#preview

依次點擊「頁面」的一個滑動到下一張幻燈片。

任何想法?

回答

1

您正在用邊距和浮動進行動畫處理。所以一旦你將最左邊的箱子從容器中擠出來,那麼右邊的箱子(直到現在已經隨着它移動了,因爲浮子)將停止移動。在-600px盒子完全離開容器,所以下一個盒子現在靠在容器的邊界上。你沒有激活他們的利潤,所以他們不會離開他們的容器。

如果您試圖通過動畫邊緣來解決這個問題,它會變得混亂。我沒有仔細檢查過你的代碼,但是如果這些箱子已經是position:relative,那麼你的款式的所有left的數量都不會超過。這意味着代碼中有兩個簡單的更改:刪除每個:first選擇器(因爲您要將它們全部設爲動畫),並將所有marginLeft更改爲left

http://jsbin.com/obivap/6/edit

+0

這很有道理,謝謝! – qwerty

+0

@qwerty,很高興。 – davin