我使用jquery'fadeOut()'刪除div元素,問題是:當我刪除一個元素時,其下的其他元素上升而沒有過渡並且看起來太突然。不知道如何解決它。如果我把css轉換到類.publication jQuery的fadeOut()停止正常工作,並刪除元素突然。上部消失時如何在div動作上應用轉換?
我該怎麼做?
編輯:而對於英語不好對不起......
EDIT2:這裏是用的jsfiddle我的問題:
jsfiddle code
我使用jquery'fadeOut()'刪除div元素,問題是:當我刪除一個元素時,其下的其他元素上升而沒有過渡並且看起來太突然。不知道如何解決它。如果我把css轉換到類.publication jQuery的fadeOut()停止正常工作,並刪除元素突然。上部消失時如何在div動作上應用轉換?
我該怎麼做?
編輯:而對於英語不好對不起......
EDIT2:這裏是用的jsfiddle我的問題:
jsfiddle code
嘿,你可以使用opacity:0;
然後slideUp()
其給出預期效果....
請看下面JSFiddle。
您可以使用slideUp()。
您也可以使用hide(500)
但我個人更喜歡slideUp(500)
的效果。
$('#yourelement').slideUp(500);
應該動畫的元素的所有其餘的爲好。
根據您的意見,您也可以使用.animate()
創造你想要的任何自定義動畫:
.animate({'height':'0','opacity':'0'});//in your specific case - $(this).parent().parent().animate({'height':'0','opacity':'0'});
甚至使用delay()
創建動畫的SQUENCE:
.animate({'opacity':'0.2'}).delay(50).animate({'height':'0','opacity':'0'});
的問題,你正在經歷的是fadeOut()行爲的結果。 將不透明度設置爲0,然後當它到達0時,它設置display:none;
,使所有元素跳起來,向下填充空白空間。 來自jQuery文檔:
.fadeOut()方法動畫匹配元素的不透明度。 一旦不透明度達到0,顯示樣式屬性設置爲無, ,因此該元素不再影響頁面的佈局。
slideUp()動畫高度第一,造成一個平滑的消失,比顯示:none ;.取自jQuery文檔:
.slideUp()方法爲匹配元素的高度生成動畫。 這會導致頁面的較低部分向上滑動,看起來隱藏了 這些項目。一旦高度達到0(或者,如果設置爲最小高度屬性的CSS ),則將顯示樣式屬性設置爲無以確保該元素不再影響頁面佈局,即 。
希望這有助於!
請張貼您的代碼。 – j08691
把一個短小提琴請:http://jsfiddle.net/ – giordanolima
你想要的空間保持原樣!?或者只是避免你的混蛋? –