2012-08-03 28 views
0

我創建了一個簡單的「幻燈片」動畫,它在第一次播放時運行正常,但第二次或連續時間沒有達到相同的效果(它應該看起來像div一樣彼此,但是一旦它向前走,第二個前進動畫就會丟失)。重置jQuery動畫給出的css值

我意識到這可能是因爲我在第二行給出的'左'位置。第一次加載動畫時,div沒有左值,一旦播放,值爲0.但是,這是我撞牆的地方,因爲我不知道如何解決它。也許殺死劇本?就我所知,我不知道是否有像「清除腳本給出的所有值」之類的東西。我希望這是有道理...

Here's the jsFiddle,這是我的代碼:

$('a.settingsTitle.settingsTitleTask').click(function() { 
    $("#settingsPortal").animate({'left': '0px','width': '0%'}, 300, function() { 
     $(this).addClass('displayNone'); 
     $("#settingsTask").removeClass('displayNone').animate({'left': '0px','width': '100%'}, 300); 
    }); 
}); 


$('a.settingsTitle.settingsTitleBack').click(function() { 
    $("#settingsTask").animate({'left': '610px','width': '0%'}, 300, function() { 
     $(this).addClass('displayNone'); 
     $("#settingsPortal").removeClass('displayNone').animate({'left': '0px','width': '100%'}, 300); 
    });   
}); 

回答

3

在JavaScript中的CSS樣式在style屬性被應用,所以要恢復到原來的狀態,只是這樣做:

$element.removeAttr('style') 
+0

謝謝!就是這樣,當它讓我接受答案時。你介意幫我進一步補充一下嗎? – Yisela 2012-08-03 02:16:49

+0

好吧,我想只要你在樣式應用後添加,那麼你應該能夠刪除它們。 – elclanrs 2012-08-03 02:24:57